$password_rc = $patron->check_password($patron_pwd);
}
- $resp .= patron_status_string($patron);
+ $resp .= patron_status_string( $patron, $server );
$resp .= $lang . timestamp();
if ( defined $server->{account}->{ae_field_template} ) {
$resp .= add_field( FID_PERSONAL_NAME, $patron->format( $server->{account}->{ae_field_template}, $server ) );
# Does the transaction date really matter for items that are
# checkout out while the terminal is online? I'm guessing 'no'
- $status = $ils->checkout( $patron_id, $item_id, $sc_renewal_policy, $fee_ack );
+ $status = $ils->checkout( $patron_id, $item_id, $sc_renewal_policy, $fee_ack, $account );
}
$item = $status->item;
$resp = (PATRON_INFO_RESP);
if ($patron) {
$patron->update_lastseen();
- $resp .= patron_status_string($patron);
+ $resp .= patron_status_string( $patron, $server );
$resp .= ( defined($lang) and length($lang) == 3 ) ? $lang : $patron->language;
$resp .= timestamp();
$resp .= maybe_add( FID_ITEM_PROPS, $item->sip_item_properties, $server );
if ( my $CR = $server->{account}->{cr_item_field} ) {
- $resp .= maybe_add( FID_COLLECTION_CODE, $item->$CR, $server );
+ $resp .= maybe_add( FID_COLLECTION_CODE, $item->{$CR}, $server );
} else {
$resp .= maybe_add( FID_COLLECTION_CODE, $item->collection_code, $server );
}
# Don't enable the patron if there was an invalid password
$status = $patron->enable;
}
- $resp .= patron_status_string($patron);
+ $resp .= patron_status_string( $patron, $server );
$resp .= $patron->language . timestamp();
$resp .= add_field( FID_PATRON_ID, $patron->id, $server );
#
sub patron_status_string {
my $patron = shift;
+ my $server = shift;
+
my $patron_status;
siplog( "LOG_DEBUG", "patron_status_string: %s charge_ok: %s", $patron->id, $patron->charge_ok );
denied( $patron->hold_ok ),
boolspace( $patron->card_lost ),
boolspace( $patron->too_many_charged ),
- boolspace( $patron->too_many_overdue ),
+ $server->{account}->{overdues_block_checkout} ? boolspace( $patron->too_many_overdue ) : q{ },
boolspace( $patron->too_many_renewal ),
boolspace( $patron->too_many_claim_return ),
boolspace( $patron->too_many_lost ),