From 6ab0bca7b933e601fe0567307535755dc34d316a Mon Sep 17 00:00:00 2001 From: Olli-Antti Kivilahti Date: Tue, 20 Jan 2015 16:48:13 +0200 Subject: [PATCH] Bug 13602 - Username/password already exists when editing borrower attributes and messaging preferences When editing a Patron's messaging preferences or borrower attributes, one cannot save changes because 'userid' is not given as a parameter. It shouldn't, but the Check_Userid($newdata{'userid'},$borrowernumber) -check must have it. AFTER THIS PATCH: Check_Userid() get the $userid from the new parameters, or if not present, from the koha.borrowers-table. --- members/memberentry.pl | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/members/memberentry.pl b/members/memberentry.pl index 5db8273..12d95c0 100755 --- a/members/memberentry.pl +++ b/members/memberentry.pl @@ -328,8 +328,10 @@ if ($op eq 'save' || $op eq 'insert'){ } } } - # Check if the userid is unique - unless (Check_Userid($newdata{'userid'},$borrowernumber)) { + # Check if the userid is unique. Userid might not always be present in the edited values list when editing certain sub-forms, so we need to dig for it a bit. + my $userid = $newdata{'userid'}; + $userid = $borrower_data->{userid} unless $userid; #Get the userid straight from the DB + unless (Check_Userid($userid,$borrowernumber)) { push @errors, "ERROR_login_exist"; } -- 1.7.9.5