Lines 1848-1858
sub AddReturn {
Link Here
|
1848 |
my $fix = _FixOverduesOnReturn($borrowernumber, $item->{itemnumber}, $exemptfine, $dropbox); |
1848 |
my $fix = _FixOverduesOnReturn($borrowernumber, $item->{itemnumber}, $exemptfine, $dropbox); |
1849 |
defined($fix) or warn "_FixOverduesOnReturn($borrowernumber, $item->{itemnumber}...) failed!"; # zero is OK, check defined |
1849 |
defined($fix) or warn "_FixOverduesOnReturn($borrowernumber, $item->{itemnumber}...) failed!"; # zero is OK, check defined |
1850 |
|
1850 |
|
1851 |
if ( $issue->{overdue} && $issue->{date_due} ) { |
1851 |
if ( $issue->{overdue} && $issue->{date_due} ) { |
1852 |
# fix fine days |
1852 |
# fix fine days |
1853 |
my $debardate = |
1853 |
my ($debardate,$reminder) = _debar_user_on_return( $borrower, $item, $issue->{date_due}, $today ); |
1854 |
_debar_user_on_return( $borrower, $item, $issue->{date_due}, $today ); |
1854 |
if ($reminder){ |
1855 |
$messages->{Debarred} = $debardate if ($debardate); |
1855 |
$messages->{'PrevDebarred'} = $debardate; |
|
|
1856 |
} else { |
1857 |
$messages->{'Debarred'} = $debardate if $debardate; |
1858 |
} |
1859 |
} elsif ( $issue->{date_due} and $borrower->{'debarred'} ) { |
1860 |
my $borrower_debar_dt = dt_from_string( $borrower->{debarred} ); |
1861 |
$borrower_debar_dt->truncate(to => 'day'); |
1862 |
my $today_dt = $today->clone()->truncate(to => 'day'); |
1863 |
if ( DateTime->compare( $borrower_debar_dt, $today_dt ) != -1 ) { |
1864 |
$messages->{'PrevDebarred'} = $borrower->{'debarred'}; |
1865 |
} |
1856 |
} |
1866 |
} |
1857 |
} |
1867 |
} |
1858 |
|
1868 |
|
Lines 2028-2039
sub _debar_user_on_return {
Link Here
|
2028 |
$dt_today->clone()->add_duration( $deltadays * $finedays ); |
2038 |
$dt_today->clone()->add_duration( $deltadays * $finedays ); |
2029 |
if ( $borrower->{debarred} ) { |
2039 |
if ( $borrower->{debarred} ) { |
2030 |
my $borrower_debar_dt = dt_from_string( $borrower->{debarred} ); |
2040 |
my $borrower_debar_dt = dt_from_string( $borrower->{debarred} ); |
2031 |
|
2041 |
$borrower_debar_dt->truncate(to => 'day'); |
|
|
2042 |
$new_debar_dt->truncate(to=>'day'); |
2032 |
# Update patron only if new date > old |
2043 |
# Update patron only if new date > old |
2033 |
if ( DateTime->compare( $borrower_debar_dt, $new_debar_dt ) != |
2044 |
if ( DateTime->compare( $borrower_debar_dt, $new_debar_dt ) != |
2034 |
-1 ) |
2045 |
-1 ) |
2035 |
{ |
2046 |
{ |
2036 |
return; |
2047 |
return ($borrower_debar_dt,1); |
2037 |
} |
2048 |
} |
2038 |
|
2049 |
|
2039 |
} |
2050 |
} |