Lines 2008-2024
sub AddReturn {
Link Here
|
2008 |
my $fix = _FixOverduesOnReturn($borrowernumber, $item->{itemnumber}, $exemptfine, $dropbox); |
2008 |
my $fix = _FixOverduesOnReturn($borrowernumber, $item->{itemnumber}, $exemptfine, $dropbox); |
2009 |
defined($fix) or warn "_FixOverduesOnReturn($borrowernumber, $item->{itemnumber}...) failed!"; # zero is OK, check defined |
2009 |
defined($fix) or warn "_FixOverduesOnReturn($borrowernumber, $item->{itemnumber}...) failed!"; # zero is OK, check defined |
2010 |
|
2010 |
|
|
|
2011 |
my $new_debar = 0; |
2011 |
if ( $issue and $issue->is_overdue ) { |
2012 |
if ( $issue and $issue->is_overdue ) { |
2012 |
# fix fine days |
2013 |
# fix fine days |
2013 |
$today = $dropboxdate if $dropbox; |
2014 |
$today = $dropboxdate if $dropbox; |
2014 |
my ($debardate,$reminder) = _debar_user_on_return( $patron_unblessed, $item, dt_from_string($issue->date_due), $today ); |
2015 |
my $debardate = _debar_user_on_return( $patron_unblessed, $item, dt_from_string($issue->date_due), $today ); |
2015 |
if ($reminder){ |
2016 |
|
2016 |
$messages->{'PrevDebarred'} = $debardate; |
2017 |
if ( $debardate ) { |
2017 |
} else { |
2018 |
$messages->{'Debarred'} = $debardate; |
2018 |
$messages->{'Debarred'} = $debardate if $debardate; |
2019 |
$new_debar = 1; |
2019 |
} |
2020 |
} |
|
|
2021 |
} |
2020 |
# there's no overdue on the item but borrower had been previously debarred |
2022 |
# there's no overdue on the item but borrower had been previously debarred |
2021 |
} elsif ( $issue->date_due and $patron->debarred ) { |
2023 |
if ( $new_debar == 0 and $patron->debarred ) { |
2022 |
if ( $patron->debarred eq "9999-12-31") { |
2024 |
if ( $patron->debarred eq "9999-12-31") { |
2023 |
$messages->{'ForeverDebarred'} = $patron->debarred; |
2025 |
$messages->{'ForeverDebarred'} = $patron->debarred; |
2024 |
} else { |
2026 |
} else { |
Lines 2277-2291
sub _debar_user_on_return {
Link Here
|
2277 |
}); |
2279 |
}); |
2278 |
# if borrower was already debarred but does not get an extra debarment |
2280 |
# if borrower was already debarred but does not get an extra debarment |
2279 |
my $patron = Koha::Patrons->find( $borrower->{borrowernumber} ); |
2281 |
my $patron = Koha::Patrons->find( $borrower->{borrowernumber} ); |
2280 |
my $new_debarment_str; |
2282 |
if ( $borrower->{debarred} ne $patron->is_debarred ) { |
2281 |
if ( $borrower->{debarred} eq $patron->is_debarred ) { |
2283 |
# FIXME Should return a DateTime object |
2282 |
$is_a_reminder = 1; |
2284 |
return $new_debar_dt->ymd(); |
2283 |
$new_debarment_str = $borrower->{debarred}; |
|
|
2284 |
} else { |
2285 |
$new_debarment_str = $new_debar_dt->ymd(); |
2286 |
} |
2285 |
} |
2287 |
# FIXME Should return a DateTime object |
|
|
2288 |
return $new_debarment_str, $is_a_reminder; |
2289 |
} |
2286 |
} |
2290 |
} |
2287 |
} |
2291 |
return; |
2288 |
return; |
2292 |
- |
|
|