From 239700d079ca6c33d3bc521c1f602e56f66069d1 Mon Sep 17 00:00:00 2001 From: Nahuel ANGELINETTI Date: Thu, 11 Dec 2008 09:56:06 +0100 Subject: [PATCH] (bug #2856) Activate the duplicate patrons detection and check birthdate only if one is set This patch activate the check of unique member, it was checked but not shown, and the member was added even if a duplicate was detected. It improve the duplicate detection, to check the birthdate only if it was specified in the form. And fix an url of "Yes" link(if the borrower added IS the duplicate detected). Signed-off-by: Henri-Damien LAURENT --- C4/Members.pm | 16 ++++++++-------- members/memberentry.pl | 14 +++++++------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/C4/Members.pm b/C4/Members.pm index 3c63f7d639..ec7ffe50a8 100644 --- a/C4/Members.pm +++ b/C4/Members.pm @@ -1242,17 +1242,17 @@ sub checkuniquemember { my $dbh = C4::Context->dbh; my $request = ($collectivity) ? "SELECT borrowernumber,categorycode FROM borrowers WHERE surname=? " : - "SELECT borrowernumber,categorycode FROM borrowers WHERE surname=? and firstname=?"; + ($dateofbirth) ? + "SELECT borrowernumber,categorycode FROM borrowers WHERE surname=? and firstname=? and dateofbirth=?" : + "SELECT borrowernumber,categorycode FROM borrowers WHERE surname=? and firstname=?"; my $sth = $dbh->prepare($request); + warn $request; if ($collectivity) { $sth->execute( uc($surname) ); - } else { - if($dateofbirth){ - $request .= " and dateofbirth=?"; - $sth->execute( uc($surname), ucfirst($firstname), $dateofbirth ); - }else{ - $sth->execute( uc($surname), ucfirst($firstname)); - } + } elsif($dateofbirth){ + $sth->execute( uc($surname), ucfirst($firstname), $dateofbirth ); + }else{ + $sth->execute( uc($surname), ucfirst($firstname)); } my @data = $sth->fetchrow; $sth->finish; diff --git a/members/memberentry.pl b/members/memberentry.pl index d4619f75c9..b3582f32c1 100755 --- a/members/memberentry.pl +++ b/members/memberentry.pl @@ -303,13 +303,13 @@ if ($delete){ } if ($nok or !$nodouble){ - $op="add" if ($op eq "insert"); - $op="modify" if ($op eq "save"); - %data=%newdata; - $template->param( updtype => ($op eq 'add' ?'I':'M')); # used to check for $op eq "insert"... but we just changed $op! - unless ($step){ - $template->param( step_1 => 1,step_2 => 1,step_3 => 1, step_4 => 1); - } + $op="add" if ($op eq "insert"); + $op="modify" if ($op eq "save"); + %data=%newdata; + $template->param( updtype => ($op eq 'add' ?'I':'M')); # used to check for $op eq "insert"... but we just changed $op! + unless ($step){ + $template->param( step_1 => 1,step_2 => 1,step_3 => 1, step_4 => 1); + } } if (C4::Context->preference("IndependantBranches")) { my $userenv = C4::Context->userenv; -- 2.39.5