View | Details | Raw Unified | Return to bug 8367
Collapse All | Expand All

(-)a/C4/Reserves.pm (-7 / +19 lines)
Lines 30-35 use C4::Members; Link Here
30
use C4::Items;
30
use C4::Items;
31
use C4::Circulation;
31
use C4::Circulation;
32
use C4::Accounts;
32
use C4::Accounts;
33
use C4::Calendar;
33
34
34
# for _koha_notify_reserve
35
# for _koha_notify_reserve
35
use C4::Members::Messaging;
36
use C4::Members::Messaging;
Lines 174-180 sub AddReserve { Link Here
174
    my $maxpickupdate = GetMaxPickupDate({
175
    my $maxpickupdate = GetMaxPickupDate({
175
        waitingdate => $waitingdate,
176
        waitingdate => $waitingdate,
176
        itemnumber => $checkitem,
177
        itemnumber => $checkitem,
177
        borrowernumber => $borrowernumber
178
        borrowernumber => $borrowernumber.
179
        branchcode => $branch,
178
    });
180
    });
179
181
180
    #eval {
182
    #eval {
Lines 346-352 sub GetReservesFromItemnumber { Link Here
346
    my ( $itemnumber, $all_dates ) = @_;
348
    my ( $itemnumber, $all_dates ) = @_;
347
    my $dbh   = C4::Context->dbh;
349
    my $dbh   = C4::Context->dbh;
348
    my $query = "
350
    my $query = "
349
    SELECT reservedate,borrowernumber,branchcode
351
    SELECT *
350
    FROM   reserves
352
    FROM   reserves
351
    WHERE  itemnumber=?
353
    WHERE  itemnumber=?
352
    ";
354
    ";
Lines 355-362 sub GetReservesFromItemnumber { Link Here
355
    }
357
    }
356
    my $sth_res = $dbh->prepare($query);
358
    my $sth_res = $dbh->prepare($query);
357
    $sth_res->execute($itemnumber);
359
    $sth_res->execute($itemnumber);
358
    my ( $reservedate, $borrowernumber,$branchcode ) = $sth_res->fetchrow_array;
360
    
359
    return ( $reservedate, $borrowernumber, $branchcode );
361
    my $reserve = $sth_res->fetchrow_hashref();
362
    
363
    return ( $reserve->{'reservedate'}, $reserve->{'borrowernumber'}, $reserve->{'branchcode'}, $reserve );
360
}
364
}
361
365
362
=head2 GetReservesFromBorrowernumber
366
=head2 GetReservesFromBorrowernumber
Lines 528-536 sub GetMaxPickupDate { Link Here
528
        $item = C4::Items::GetItem( $reserve->{itemnumber} );
532
        $item = C4::Items::GetItem( $reserve->{itemnumber} );
529
    }
533
    }
530
534
531
    unless ( defined $reserve ) {
535
    unless ( defined $reserve && defined $reserve->{'branchcode'} ) {
532
        my $reserve = GetReservesFromItemnumber( $item->{itemnumber} );
536
        ( undef, undef, undef, $reserve ) = GetReservesFromItemnumber( $item->{itemnumber} );
533
    }
537
    }
538
534
    return unless $reserve->{waitingdate};
539
    return unless $reserve->{waitingdate};
535
540
536
    my $borrower = C4::Members::GetMember( 'borrowernumber' => $reserve->{borrowernumber} );
541
    my $borrower = C4::Members::GetMember( 'borrowernumber' => $reserve->{borrowernumber} );
Lines 551-556 sub GetMaxPickupDate { Link Here
551
556
552
    $date->add( days => $holdspickupdelay );
557
    $date->add( days => $holdspickupdelay );
553
558
559
    my $calendar = C4::Calendar->new( branchcode => $reserve->{'branchcode'} );
560
    my $is_holiday = $calendar->isHoliday( $date->day(), $date->month(), $date->year() );
561
562
    while ( $is_holiday ) {
563
        $date->add( days => 1 );
564
        $is_holiday = $calendar->isHoliday( $date->day(), $date->month(), $date->year() );
565
    }
566
                                
554
    return $date;
567
    return $date;
555
}
568
}
556
569
557
- 

Return to bug 8367