diff --git a/C4/Auth.pm b/C4/Auth.pm index b5308ae4a4..7f0475b16f 100644 --- a/C4/Auth.pm +++ b/C4/Auth.pm @@ -195,7 +195,7 @@ sub get_template_and_user { $in->{query}->param( -name => 'koha_login_context', -values => ['sco'] ); } else { my $request_method = $in->{query}->request_method // q{}; - unless ( $request_method eq 'POST' && $in->{query}->param('op') eq 'cud-login' ) { + unless ( $request_method eq 'POST' && $in->{query}->param('login_op') eq 'cud-login' ) { for my $v (qw( login_userid login_password )) { $in->{query}->param( $v, '' ) if $in->{query}->param($v); @@ -1415,6 +1415,7 @@ sub checkauth { $uri->query_param_delete('login_userid'); $uri->query_param_delete('login_password'); $uri->query_param_delete('koha_login_context'); + $uri->query_param_delete('login_op'); $uri->query_param_delete('op'); $uri->query_param_delete('csrf_token'); unless ( $params->{do_not_print} ) { diff --git a/C4/InstallAuth.pm b/C4/InstallAuth.pm index 8c84b532cb..55f59f6114 100644 --- a/C4/InstallAuth.pm +++ b/C4/InstallAuth.pm @@ -111,7 +111,7 @@ sub get_template_and_user { my $template = C4::Templates->new( $interface, $filename, $tmplbase, $query ); my $request_method = $in->{query}->request_method // q{}; - unless ( $request_method eq 'POST' && $in->{query}->param('op') eq 'cud-login' ) { + unless ( $request_method eq 'POST' && $in->{query}->param('login_op') eq 'cud-login' ) { $in->{query}->param( 'login_userid', '' ); $in->{query}->param( 'login_password', '' ); } diff --git a/Koha/Middleware/CSRF.pm b/Koha/Middleware/CSRF.pm index fd62c7c7c0..6d084cefe1 100644 --- a/Koha/Middleware/CSRF.pm +++ b/Koha/Middleware/CSRF.pm @@ -68,7 +68,7 @@ sub call { # Get the CSRF token from the param list or the header my $csrf_token = $req->param('csrf_token') || $req->header('CSRF-TOKEN'); - if ( defined $req->param('op') && $original_op !~ m{^cud-} ) { + if ( ( defined $req->param('op') && $original_op !~ m{^cud-} ) && !$req->param('login_op') ) { $error = sprintf "Programming error - op '%s' must start with 'cud-' for %s %s (referer: %s)", $original_op, $request_method, $uri, $referer; } elsif ( !$csrf_token ) { diff --git a/catalogue/search.pl b/catalogue/search.pl index 957a9f9dcf..53ec963579 100755 --- a/catalogue/search.pl +++ b/catalogue/search.pl @@ -264,7 +264,7 @@ $template->param( advancedsearchesloop => $advancedsearchesloop ); $template->param( searchid => scalar $cgi->param('searchid'), ); my $default_sort_by = C4::Context->default_catalog_sort_by; -my @sanitized_operators = grep { $_ ne 'cud-login' } $cgi->multi_param('op'); +my @sanitized_operators = $cgi->multi_param('op'); #NOTE: No longer sanitized... # The following should only be loaded if we're bringing up the advanced search template if ( $template_type eq 'advsearch' ) { diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/auth.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/auth.tt index 7f3ab66202..7fde54a257 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/auth.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/auth.tt @@ -160,10 +160,9 @@
[% INCLUDE 'csrf-token.inc' %] - + [% FOREACH INPUT IN INPUTS %] - [% NEXT IF INPUT.name == "op" %] [% NEXT IF INPUT.name == "csrf_token" %] [% NEXT IF INPUT.name == "koha_login_context" %] [% NEXT IF INPUT.name == "branch" %] @@ -254,10 +253,9 @@ [% ELSIF TwoFA_prompt %] [% INCLUDE 'csrf-token.inc' %] - + [% FOREACH INPUT IN INPUTS %] - [% NEXT IF INPUT.name == "op" %] [% NEXT IF INPUT.name == "csrf_token" %] [% NEXT IF INPUT.name == "koha_login_context" %] [% NEXT IF INPUT.name == "branch" %] diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/installer/auth.tt b/koha-tmpl/intranet-tmpl/prog/en/modules/installer/auth.tt index d609f9cdc8..96cd6c3cf4 100644 --- a/koha-tmpl/intranet-tmpl/prog/en/modules/installer/auth.tt +++ b/koha-tmpl/intranet-tmpl/prog/en/modules/installer/auth.tt @@ -57,9 +57,8 @@ [% INCLUDE 'csrf-token.inc' %] - + [% FOREACH INPUT IN INPUTS %] - [% NEXT IF INPUT.name == "op" %] [% NEXT IF INPUT.name == "csrf_token" %] [% NEXT IF INPUT.name == "login_userid" %] [% NEXT IF INPUT.name == "login_password" %] diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/includes/masthead.inc b/koha-tmpl/opac-tmpl/bootstrap/en/includes/masthead.inc index 2b6d4478d6..72dcf03814 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/includes/masthead.inc +++ b/koha-tmpl/opac-tmpl/bootstrap/en/includes/masthead.inc @@ -508,7 +508,7 @@ [% PROCESS login_label for="muserid" %]
- +
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 a75cd07132..d74c106647 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-auth.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-auth.tt @@ -236,7 +236,7 @@ [% END %] [% INCLUDE 'csrf-token.inc' %] - +
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-main.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-main.tt index 84859f99d1..4e4c31416a 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-main.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-main.tt @@ -202,7 +202,7 @@
- +
diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-registration-confirmation.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-registration-confirmation.tt index 57764dc4a4..83ccf1ec15 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-registration-confirmation.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-registration-confirmation.tt @@ -110,7 +110,7 @@ [% INCLUDE 'csrf-token.inc' %] - +
Log in to your account: [% PROCESS login_label for="userid" %] diff --git a/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/sco-main.tt b/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/sco-main.tt index 9cd5d9c9cf..e8583f69bd 100644 --- a/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/sco-main.tt +++ b/koha-tmpl/opac-tmpl/bootstrap/en/modules/sco/sco-main.tt @@ -372,7 +372,7 @@ [% FOREACH INPUT IN INPUTS %] [% END %] - +
diff --git a/opac/opac-tags.pl b/opac/opac-tags.pl index 70429fda57..603e50b509 100755 --- a/opac/opac-tags.pl +++ b/opac/opac-tags.pl @@ -122,7 +122,7 @@ unless ( C4::Context->preference('TagsEnabled') ) { if ($add_op) { unless ($loggedinuser) { - push @errors, { +'cud-login' => 1 }; + push @errors, { +'login' => 1 }; push @globalErrorIndexes, $#errors; %newtags = (); # zero out any attempted additions @deltags = (); # zero out any attempted deletions