Bug 7016 Followup: Add new GetItemnumberForBiblio subroutine
[koha_gimpoz] / C4 / Auth_with_ldap.pm
index 462ff07..7f56d9c 100644 (file)
@@ -161,7 +161,7 @@ sub checkpw_ldap {
             ($cardnumber eq $c2) or warn "update_local returned cardnumber '$c2' instead of '$cardnumber'";
         } else { # C1, D1
             # maybe update just the password?
-               return(1, $cardnumber); # FIXME dpavlin -- don't destroy ExtendedPatronAttributes
+               return(1, $cardnumber, $local_userid);
         }
     } elsif ($config{replicate}) { # A2, C2
         $borrowernumber = AddMember(%borrower) or die "AddMember failed";
@@ -171,8 +171,9 @@ sub checkpw_ldap {
        if (C4::Context->preference('ExtendedPatronAttributes') && $borrowernumber && ($config{update} ||$config{replicate})) {
                my @types = C4::Members::AttributeTypes::GetAttributeTypes();
                my @attributes = grep{my $key=$_; any{$_ eq $key}@types;} keys %borrower;
-               my $extended_patron_attributes = map{{code=>$_,value=>$borrower{$_}}}@attributes;
-               my $extended_patron_attributes = [] unless $extended_patron_attributes;
+        my $extended_patron_attributes;
+        @{$extended_patron_attributes} =
+          map { { code => $_, value => $borrower{$_} } } @attributes;
                my @errors;
                #Check before add
                for (my $i; $i< scalar(@$extended_patron_attributes)-1;$i++) {
@@ -188,7 +189,7 @@ sub checkpw_ldap {
                }
            C4::Members::Attributes::SetBorrowerAttributes($borrowernumber, $extended_patron_attributes);
        }
-return(1, $cardnumber);
+return(1, $cardnumber, $userid);
 }
 
 # Pass LDAP entry object and local cardnumber (userid).