From e476be5568d41bb06ce2fef5e8da6417cf9ed682 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Tue, 8 Mar 2016 22:04:32 +0000 Subject: [PATCH] Bug 12663 - SCOUserCSS and SCOUserJS ignored on selfcheck login page MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Currently if not logged in when browsing to http://YOURCATALOG/cgi-bin/koha/sco/sco-main.pl You are redirected to opac-auth.tt and SCOUserCSS and SCOUserJS are not loaded. This page passes through a parameter to the template to indicate this is an SCO login and appropriate CSS and JS should be loaded. Additionally this patch ensure that when loggin in using the form you are redirected to the sco-main.pl instead of the patron account page for the user. To test: 1 - Verify that normal login works on both staff and opac 2 - Verify that SCO link goes to login page if AutoSelfCheckAllowed is set to "Don't allow" 3 - Enter changes into SCOUserJS and SCOUserCSS and observe these are present on SCO log in page with AutoSelfCheck disabled 4 - Verify that a logged in opac user without permissions cannot access the self-checkout module 5 - Verify that AutoSelfCheckAllowed and associated system preferences function as expected 6 - Verify the AutoSelfCheck user is logged out if they attempt to visit another page Followed test plan. If I go to http://YOURCATALOG/cgi-bin/koha/sco/sco-main.pl, CSS and JS trigger already on the login form, I suppose that is intended. Signed-off-by: Marc Véron Signed-off-by: Katrin Fischer Signed-off-by: Brendan Gallagher --- C4/Auth.pm | 1 + .../bootstrap/en/includes/doc-head-close.inc | 9 ++++++- .../bootstrap/en/includes/opac-bottom.inc | 24 +++++++++++++------ .../bootstrap/en/modules/opac-auth.tt | 9 ++++++- opac/sco/sco-main.pl | 1 + 5 files changed, 35 insertions(+), 9 deletions(-) diff --git a/C4/Auth.pm b/C4/Auth.pm index e3aececa32..9c07333292 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -1249,6 +1249,7 @@ sub checkauth { opac_css_override => $ENV{'OPAC_CSS_OVERRIDE'}, ); + $template->param( SCO_login => 1 ) if ( $query->param('sco_user_login') ); $template->param( OpacPublic => C4::Context->preference("OpacPublic") ); $template->param( loginprompt => 1 ) unless $info{'nopermission'}; diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-close.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-close.inc index e346689687..47918a4291 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-close.inc +++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/doc-head-close.inc @@ -37,7 +37,14 @@ [% IF ( bidi ) %] [% END %] -[% IF ( OPACUserCSS ) %][% END %] +[% IF SCO_login %] + [% SET SCOUserCSS = Koha.Preference('SCOUserCSS') %] + [% IF SCOUserCSS %] + + [% END %] +[% ELSE %] + [% IF ( OPACUserCSS ) %][% END %] +[% END %] [% PROCESS cssinclude %] diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-bottom.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-bottom.inc index 63c562ffdb..aae5c24a6c 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-bottom.inc +++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/opac-bottom.inc @@ -266,13 +266,23 @@ $(document).ready(function() { }); [% PROCESS jsinclude %] - -[% IF ( OPACUserJS ) %] - +[% IF SCO_login %] + [% SET SCOUserJS = Koha.Preference('SCOUserJS') %] + [% IF ( SCOUserJS ) %] + + [% END %] +[% ELSE %] + [% IF ( OPACUserJS ) %] + + [% END %] [% END %] diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-auth.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-auth.tt index a20490e804..64ea0f8da4 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-auth.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-auth.tt @@ -29,6 +29,9 @@

Access denied

Sorry, the system doesn't think you have permission to access this page.

+ [% IF SCO_login %] +

Logout and try again with a different user

+ [% END %]
[% END %] @@ -149,7 +152,11 @@

If you do not have a Google account, but do have a local account, you can still log in:

[% END %] -
+ [% IF SCO_login %] + + [% ELSE %] + + [% END %]
[% FOREACH INPUT IN INPUTS %] diff --git a/opac/sco/sco-main.pl b/opac/sco/sco-main.pl index 5584dae7bd..0e2a1b9592 100755 --- a/opac/sco/sco-main.pl +++ b/opac/sco/sco-main.pl @@ -64,6 +64,7 @@ if (C4::Context->preference('AutoSelfCheckAllowed')) $query->param(-name=>'password',-values=>[$AutoSelfCheckPass]); $query->param(-name=>'koha_login_context',-values=>['sco']); } +$query->param(-name=>'sco_user_login',-values=>[1]); my ($template, $loggedinuser, $cookie) = get_template_and_user({ template_name => "sco/sco-main.tt", authnotrequired => 0, -- 2.39.5