From: Jeff Godin Date: Thu, 23 Aug 2012 18:39:26 +0000 (-0400) Subject: Make patron alias unique test case insensitive X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=cbd46688a1e2b0f165e427d8c70ff6e6788239ba;p=evergreen%2Ftadl.git Make patron alias unique test case insensitive When testing a patron alias to determine if it is unique, ensure that the comparison is done without regard for case. Case is preserved, but when searching for an existing matching alias, both values are lowercased using evergreen.lowercase(). Signed-off-by: Jeff Godin --- diff --git a/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm b/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm index c2a0bc5630..c766728b3d 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm @@ -1420,7 +1420,17 @@ sub update_passwd { } elsif( $api =~ /alias/o ) { - my $exist = $e->search_actor_user({alias=>$new_val},{idlist=>1}); + my $exist = $e->search_actor_user( + { alias => { + "=" => { + transform => "evergreen.lowercase", + value => lc($new_val) + } + } + }, + { idlist => 1 } + ); + if (@$exist) { $e->rollback; return new OpenILS::Event('USERNAME_EXISTS');