[Patches] [PATCH] [Signed Off] Bug 7134: patron records getting corrupted birthdates

koha-patchbot at kohaaloha.com koha-patchbot at kohaaloha.com
Fri Nov 18 08:30:03 NZDT 2011


From: Ian Walls <ian.walls at bywatersolutions.com>
Date: Thu, 17 Nov 2011 10:27:47 -0500
Subject: [PATCH] [Signed Off] Bug 7134: patron records getting corrupted birthdates
Content-Type: text/plain; charset="utf-8"

If no date of birth is provided in a new member form, the borrower gets the birthdate of "00/02/0", which
is obviously incorrect (the result of passing 0 to the database directly)

The fix is to remove a conditional check buried deep in C4::SQLHelper.  This is in a helper subroutine that was changed
for the Unified Member Search dev (bug 6253).  Reverting this small change to the conditional does not seem to break
search, but testing will be required.

To test:
1. apply patch, and create a new patron with blank birthdate.  The new patron should now have a blank birthdate instead of '00/02/0'
2. search for a borrower by 1 part surname, confirm search works
3. search for a borrower by 2 part surname, confirm search works
4. search for a borrower across firstname AND surname; confirm
5. search for a borrower and include categorycode/branchcode filters

Signed-off-by: Liz Rea <wizzyrea at gmail.com>
I confirm all working tests 1-5
1. Created patron with blank birthdate - birthdate was blank
2. Searched for patron "henry james acevedo III" by using "acevedo" - result was correct
3. Searched for mr. acevedo using "Acevedo III" - result was correct
4. Searched for Henry James Acevedo III, Henry Acevedo and James Acevedo - results were correct
5. Searched for Mr Acevedo with the branch he was not in, with the branch he is in, with a category he was not, and a category he was. All results were correct.

also noted: inner searching seems to be working now? Example: Henry James (firstname) Acevedo III (surname) - searching James Acevedo brings back the correct patron.
Not complaining, just noting. :)
---
 C4/SQLHelper.pm |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/C4/SQLHelper.pm b/C4/SQLHelper.pm
index 4c74df2..cf425fd 100644
--- a/C4/SQLHelper.pm
+++ b/C4/SQLHelper.pm
@@ -360,7 +360,7 @@ sub _filter_hash{
 		## supposed to be a hash of simple values, hashes of arrays could be implemented
 		$filter_input->{$field}=format_date_in_iso($filter_input->{$field})
           if $columns->{$field}{Type}=~/date/ &&
-             $filter_input->{$field} && $filter_input->{$field} !~C4::Dates->regexp("iso");
+             $filter_input->{$field} !~C4::Dates->regexp("iso");
 		my ($tmpkeys, $localvalues)=_Process_Operands($filter_input->{$field},"$tablename.$field",$searchtype,$columns);
 		if (@$tmpkeys){
 			push @values, @$localvalues;
-- 
1.7.2.5


More information about the Patches mailing list