Lines 127-132
sub set_waiting {
Link Here
|
127 |
waitingdate => $today->ymd, |
127 |
waitingdate => $today->ymd, |
128 |
}; |
128 |
}; |
129 |
|
129 |
|
|
|
130 |
my $requested_expiration; |
131 |
if ($self->expirationdate) { |
132 |
$requested_expiration = dt_from_string($self->expirationdate); |
133 |
} |
134 |
|
130 |
if ( C4::Context->preference("ExpireReservesMaxPickUpDelay") ) { |
135 |
if ( C4::Context->preference("ExpireReservesMaxPickUpDelay") ) { |
131 |
my $max_pickup_delay = C4::Context->preference("ReservesMaxPickUpDelay"); |
136 |
my $max_pickup_delay = C4::Context->preference("ReservesMaxPickUpDelay"); |
132 |
my $cancel_on_holidays = C4::Context->preference('ExpireReservesOnHolidays'); |
137 |
my $cancel_on_holidays = C4::Context->preference('ExpireReservesOnHolidays'); |
Lines 139-145
sub set_waiting {
Link Here
|
139 |
$expirationdate = $calendar->days_forward( dt_from_string($self->waitingdate), $max_pickup_delay ); |
144 |
$expirationdate = $calendar->days_forward( dt_from_string($self->waitingdate), $max_pickup_delay ); |
140 |
} |
145 |
} |
141 |
|
146 |
|
142 |
$values->{expirationdate} = $expirationdate->ymd; |
147 |
# If patron's requested expiration date is prior to the |
|
|
148 |
# calculated one, we keep the patron's one. |
149 |
my $cmp = $requested_expiration ? DateTime->compare($requested_expiration, $expirationdate) : 0; |
150 |
$values->{expirationdate} = $cmp == -1 ? $requested_expiration->ymd : $expirationdate->ymd; |
143 |
} |
151 |
} |
144 |
|
152 |
|
145 |
$self->set($values)->store(); |
153 |
$self->set($values)->store(); |
146 |
- |
|
|