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=30e4f03cd5faad3613d455f93833484da3026d3f;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 327f3e8076..71ebd572dd 100644 --- a/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm +++ b/Open-ILS/src/perlmods/lib/OpenILS/Application/Actor.pm @@ -1506,7 +1506,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');