|
Lines 2021-2043
sub MoveReserve {
Link Here
|
| 2021 |
my $lookahead = C4::Context->preference('ConfirmFutureHolds'); #number of days to look for future holds |
2021 |
my $lookahead = C4::Context->preference('ConfirmFutureHolds'); #number of days to look for future holds |
| 2022 |
my $item = Koha::Items->find($itemnumber); |
2022 |
my $item = Koha::Items->find($itemnumber); |
| 2023 |
my ( $restype, $res, undef ) = CheckReserves( $item, $lookahead ); |
2023 |
my ( $restype, $res, undef ) = CheckReserves( $item, $lookahead ); |
| 2024 |
return unless $res; |
|
|
| 2025 |
|
2024 |
|
| 2026 |
my $biblionumber = $res->{biblionumber}; |
2025 |
if ( $res && $res->{borrowernumber} == $borrowernumber ) { |
| 2027 |
|
|
|
| 2028 |
if ( $res->{borrowernumber} == $borrowernumber ) { |
| 2029 |
my $hold = Koha::Holds->find( $res->{reserve_id} ); |
2026 |
my $hold = Koha::Holds->find( $res->{reserve_id} ); |
| 2030 |
$hold->fill( { item_id => $itemnumber } ); |
2027 |
$hold->fill( { item_id => $itemnumber } ); |
| 2031 |
} else { |
2028 |
} else { |
| 2032 |
|
2029 |
|
| 2033 |
# warn "Reserved"; |
|
|
| 2034 |
# The item is reserved by someone else. |
2030 |
# The item is reserved by someone else. |
| 2035 |
# Find this item in the reserves |
2031 |
# Find this item in the reserves |
| 2036 |
|
2032 |
|
|
|
2033 |
my $lookahead_date = output_pref( |
| 2034 |
{ |
| 2035 |
dt => dt_from_string->add_duration( DateTime::Duration->new( days => $lookahead ) ), |
| 2036 |
dateformat => 'iso', dateonly => 1 |
| 2037 |
} |
| 2038 |
); |
| 2037 |
my $borr_res = Koha::Holds->search( |
2039 |
my $borr_res = Koha::Holds->search( |
| 2038 |
{ |
2040 |
{ |
| 2039 |
borrowernumber => $borrowernumber, |
2041 |
borrowernumber => $borrowernumber, |
| 2040 |
biblionumber => $biblionumber, |
2042 |
biblionumber => $item->biblionumber, |
|
|
2043 |
reservedate => { '<=' => $lookahead_date }, |
| 2044 |
-or => [ item_level_hold => 0, itemnumber => $itemnumber ], |
| 2041 |
}, |
2045 |
}, |
| 2042 |
{ order_by => 'priority' } |
2046 |
{ order_by => 'priority' } |
| 2043 |
)->next(); |
2047 |
)->next(); |
| 2044 |
- |
|
|