From c56b10b580673c2dd8408d1dde4c6eac747f5b1e 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 (cherry picked from commit e476be5568d41bb06ce2fef5e8da6417cf9ed682) Signed-off-by: Julian Maurice --- 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 c8b19b4848..1dbff63c4a 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -1245,6 +1245,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 03ede078ea..dcf38dba26 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 3dc1c56ec9..452ed64bdd 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 %] @@ -138,7 +141,11 @@ [% END # / IF casAuthentication %] -
+ [% IF SCO_login %] + + [% ELSE %] + + [% END %]
[% FOREACH INPUT IN INPUTS %] diff --git a/opac/sco/sco-main.pl b/opac/sco/sco-main.pl index eff549d57b..88cd6996dd 100755 --- a/opac/sco/sco-main.pl +++ b/opac/sco/sco-main.pl @@ -62,6 +62,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