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

(-)a/Koha/Hold.pm (-2 / +2 lines)
Lines 231-238 sub set_waiting { Link Here
231
    my $max_pickup_delay = C4::Context->preference("ReservesMaxPickUpDelay");
231
    my $max_pickup_delay = C4::Context->preference("ReservesMaxPickUpDelay");
232
    my $cancel_on_holidays = C4::Context->preference('ExpireReservesOnHolidays');
232
    my $cancel_on_holidays = C4::Context->preference('ExpireReservesOnHolidays');
233
233
234
    my $new_expiration_date = dt_from_string($self->waitingdate)->clone->add( days => $max_pickup_delay );
235
236
    my $rule = Koha::CirculationRules->get_effective_rule({
234
    my $rule = Koha::CirculationRules->get_effective_rule({
237
        categorycode => $self->borrower->categorycode,
235
        categorycode => $self->borrower->categorycode,
238
        itemtype => $self->item->effective_itemtype,
236
        itemtype => $self->item->effective_itemtype,
Lines 244-249 sub set_waiting { Link Here
244
        $max_pickup_delay = $rule->rule_value;
242
        $max_pickup_delay = $rule->rule_value;
245
    }
243
    }
246
244
245
    my $new_expiration_date = dt_from_string($self->waitingdate)->clone->add( days => $max_pickup_delay );
246
247
    if ( C4::Context->preference("ExcludeHolidaysFromMaxPickUpDelay") ) {
247
    if ( C4::Context->preference("ExcludeHolidaysFromMaxPickUpDelay") ) {
248
        my $itemtype = $self->item ? $self->item->effective_itemtype : $self->biblio->itemtype;
248
        my $itemtype = $self->item ? $self->item->effective_itemtype : $self->biblio->itemtype;
249
        my $daysmode = Koha::CirculationRules->get_effective_daysmode(
249
        my $daysmode = Koha::CirculationRules->get_effective_daysmode(
(-)a/admin/smart-rules.pl (-1 / +1 lines)
Lines 294-300 elsif ($op eq 'add') { Link Here
294
    my $recall_due_date_interval = $input->param('recall_due_date_interval');
294
    my $recall_due_date_interval = $input->param('recall_due_date_interval');
295
    my $recall_overdue_fine = $input->param('recall_overdue_fine');
295
    my $recall_overdue_fine = $input->param('recall_overdue_fine');
296
    my $recall_shelf_time = $input->param('recall_shelf_time');
296
    my $recall_shelf_time = $input->param('recall_shelf_time');
297
    my $holds_pickup_period = strip_non_numeric($input->param('holds_pickup_period'));
297
    my $holds_pickup_period = strip_non_numeric( scalar $input->param('holds_pickup_period') );
298
298
299
    my $rules = {
299
    my $rules = {
300
        maxissueqty                   => $maxissueqty,
300
        maxissueqty                   => $maxissueqty,
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt (-10 / +14 lines)
Lines 284-290 Link Here
284
                                        </ul>
284
                                        </ul>
285
285
286
                                        [% IF pickup_delays %]
286
                                        [% IF pickup_delays %]
287
                                            <p id="pickup_delay" style="display:none;">When your item is ready for pickup, you will have <span id="pickup_delay_days"></span> days to pick it up from this library.</p>
287
                                            <p class="pickup_delay" style="display:none;">When your item is ready for pickup, you will have <span id="pickup_delay_days_[% bibitemloo.biblionumber | html %]"></span> days to pick it up from this library.</p>
288
                                        [% END %]
288
                                        [% END %]
289
289
290
                                        <a class="toggle-hold-options" id="toggle-hold-options-[% bibitemloo.biblionumber | html %]" style="display:none;" href="#">Show more options</a>
290
                                        <a class="toggle-hold-options" id="toggle-hold-options-[% bibitemloo.biblionumber | html %]" style="display:none;" href="#">Show more options</a>
Lines 509-521 Link Here
509
    var MSG_EMPTY_END_DATE   = _("Hold expiration date should be filled.");
509
    var MSG_EMPTY_END_DATE   = _("Hold expiration date should be filled.");
510
510
511
    function calculate_delay_days(){
511
    function calculate_delay_days(){
512
        var selected_branch = $("#branch_1").val();
512
        $(".branch > select").each(function(){
513
        [% FOREACH branchcode IN pickup_delays.keys %]
513
            var selected_branch = $(this).val();
514
            var branchcode = "[% branchcode | html %]";
514
            var branch_biblionumber = $(this).attr('id');
515
            if ( branchcode == selected_branch ) {
515
            var biblionumber = branch_biblionumber.slice( branch_biblionumber.indexOf('_')+1 );
516
                $("#pickup_delay_days").text([% pickup_delays.$branchcode | html %]);
516
            [% FOREACH branchcode IN pickup_delays.keys %]
517
            }
517
                var branchcode = "[% branchcode | html %]";
518
        [% END %]
518
                if ( branchcode == selected_branch ) {
519
                    $("#pickup_delay_days_" + biblionumber).text([% pickup_delays.$branchcode | html %]);
520
                }
521
            [% END %]
522
        });
519
    }
523
    }
520
524
521
    $(document).ready(function() {
525
    $(document).ready(function() {
Lines 526-533 Link Here
526
        });
530
        });
527
531
528
        calculate_delay_days();
532
        calculate_delay_days();
529
        $("#pickup_delay").show();
533
        $(".pickup_delay").show();
530
        $("#branch_1").change(function(){
534
        $(".branch > select").change(function(){
531
            calculate_delay_days();
535
            calculate_delay_days();
532
        });
536
        });
533
537
(-)a/opac/opac-reserve.pl (-3 / +6 lines)
Lines 629-635 if ( Link Here
629
    );
629
    );
630
}
630
}
631
631
632
my @branches = Koha::Libraries->search();
632
my @branches = Koha::Libraries->search->as_list;
633
my %hold_pickup_delay_by_branch = ();
633
my %hold_pickup_delay_by_branch = ();
634
634
635
foreach my $branch ( @branches ) {
635
foreach my $branch ( @branches ) {
Lines 639-645 foreach my $branch ( @branches ) { Link Here
639
        itemtype => undef,
639
        itemtype => undef,
640
        rule_name => 'holds_pickup_period',
640
        rule_name => 'holds_pickup_period',
641
    });
641
    });
642
    $hold_pickup_delay_by_branch{$branch->branchcode} = $rule->rule_value if ( $rule and $rule->rule_value );
642
    if ( $rule and $rule->rule_value ) {
643
        $hold_pickup_delay_by_branch{$branch->branchcode} = $rule->rule_value;
644
    } else {
645
        $hold_pickup_delay_by_branch{$branch->branchcode} = C4::Context->preference('ReservesMaxPickUpDelay');
646
    }
643
}
647
}
644
648
645
$template->param( pickup_delays => \%hold_pickup_delay_by_branch );
649
$template->param( pickup_delays => \%hold_pickup_delay_by_branch );
646
- 

Return to bug 8367