From 8dfd6c9c1825ad6f1cc1f02ec9a8447f47a922bd Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Thu, 4 Feb 2021 17:37:26 +0100 Subject: [PATCH] Bug 27626: Fix self registration if categorycode is hidden and PatronSelfRegistrationVerifyByEmail If categorycode is selected in PatronSelfRegistrationBorrowerUnwantedField and PatronSelfRegistrationVerifyByEmail is turned on, the patron self registration fails with [You must provide a patron's category to validate password's strength and length] at /usr/share/perl5/Exception/Class/Base.pm line 88 Test plan: 0. Select categorycode in PatronSelfRegistrationBorrowerUnwantedField and turn on PatronSelfRegistrationVerifyByEmail 1. Self register a patron 2. Confirm that it works as expected with this patch applied. Signed-off-by: Owen Leonard --- opac/opac-memberentry.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/opac/opac-memberentry.pl b/opac/opac-memberentry.pl index d11ae31925..ce02cd5ac3 100755 --- a/opac/opac-memberentry.pl +++ b/opac/opac-memberentry.pl @@ -123,6 +123,7 @@ if ( $action eq 'create' ) { my %borrower = ParseCgiForBorrower($cgi); %borrower = DelEmptyFields(%borrower); + $borrower{categorycode} ||= C4::Context->preference('PatronSelfRegistrationDefaultCategory'); my @empty_mandatory_fields = (CheckMandatoryFields( \%borrower, $action ), CheckMandatoryAttributes( \%borrower, $attributes ) ); my $invalidformfields = CheckForInvalidFields(\%borrower); @@ -218,7 +219,6 @@ if ( $action eq 'create' ) { } ); - $borrower{categorycode} ||= C4::Context->preference('PatronSelfRegistrationDefaultCategory'); $borrower{password} ||= Koha::AuthUtils::generate_password(Koha::Patron::Categories->find($borrower{categorycode})); my $consent_dt = delete $borrower{gdpr_proc_consent}; my $patron = Koha::Patron->new( \%borrower )->store; -- 2.11.0