Lines 369-382
sub AuthenticatePatron {
Link Here
|
369 |
my $username = $cgi->param('username'); |
369 |
my $username = $cgi->param('username'); |
370 |
my $password = $cgi->param('password'); |
370 |
my $password = $cgi->param('password'); |
371 |
my ($status, $cardnumber, $userid) = C4::Auth::checkpw( C4::Context->dbh, $username, $password ); |
371 |
my ($status, $cardnumber, $userid) = C4::Auth::checkpw( C4::Context->dbh, $username, $password ); |
372 |
if ( $status ) { |
372 |
|
373 |
# Get the borrower |
373 |
return { code => 'PatronNotFound' } unless( $status ); |
374 |
my $patron = Koha::Patrons->find( { userid => $userid } ); |
374 |
|
375 |
return { id => $patron->borrowernumber }; |
375 |
# Get the borrower |
376 |
} |
376 |
my $patron = Koha::Patrons->find( { userid => $userid } ); |
377 |
else { |
377 |
my $response->{id} = $patron->borrowernumber; |
378 |
return { code => 'PatronNotFound' }; |
378 |
# Check passwd complexity against rules |
|
|
379 |
my ($is_valid, $error) = Koha::AuthUtils::is_password_valid( $password ); |
380 |
|
381 |
unless( $is_valid ) { |
382 |
$response->{code} = 'PatronPasswordNotSecure'; |
383 |
$response->{securePasswordLabel} = $error; |
384 |
my $minPasswordLength = C4::Context->preference('minPasswordLength'); |
385 |
$response->{securePasswordPattern} = '.{'.$minPasswordLength.'}' if( $error eq 'too_short'); |
386 |
$response->{securePasswordPattern} = '(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{'.$minPasswordLength.'}' if( $error eq 'too_weak'); |
379 |
} |
387 |
} |
|
|
388 |
|
389 |
return $response; |
380 |
} |
390 |
} |
381 |
|
391 |
|
382 |
=head2 GetPatronInfo |
392 |
=head2 GetPatronInfo |
383 |
- |
|
|