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 = $today->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 = $today->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 293-299 elsif ($op eq 'add') { Link Here
293
    my $recall_due_date_interval = $input->param('recall_due_date_interval');
293
    my $recall_due_date_interval = $input->param('recall_due_date_interval');
294
    my $recall_overdue_fine = $input->param('recall_overdue_fine');
294
    my $recall_overdue_fine = $input->param('recall_overdue_fine');
295
    my $recall_shelf_time = $input->param('recall_shelf_time');
295
    my $recall_shelf_time = $input->param('recall_shelf_time');
296
    my $holds_pickup_period = strip_non_numeric($input->param('holds_pickup_period'));
296
    my $holds_pickup_period = strip_non_numeric( scalar $input->param('holds_pickup_period') );
297
297
298
    my $rules = {
298
    my $rules = {
299
        maxissueqty                   => $maxissueqty,
299
        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 614-620 if ( Link Here
614
    );
614
    );
615
}
615
}
616
616
617
my @branches = Koha::Libraries->search();
617
my @branches = Koha::Libraries->search->as_list;
618
my %hold_pickup_delay_by_branch = ();
618
my %hold_pickup_delay_by_branch = ();
619
619
620
foreach my $branch ( @branches ) {
620
foreach my $branch ( @branches ) {
Lines 624-630 foreach my $branch ( @branches ) { Link Here
624
        itemtype => undef,
624
        itemtype => undef,
625
        rule_name => 'holds_pickup_period',
625
        rule_name => 'holds_pickup_period',
626
    });
626
    });
627
    $hold_pickup_delay_by_branch{$branch->branchcode} = $rule->rule_value if ( $rule and $rule->rule_value );
627
    if ( $rule and $rule->rule_value ) {
628
        $hold_pickup_delay_by_branch{$branch->branchcode} = $rule->rule_value;
629
    } else {
630
        $hold_pickup_delay_by_branch{$branch->branchcode} = C4::Context->preference('ReservesMaxPickUpDelay');
631
    }
628
}
632
}
629
633
630
$template->param( pickup_delays => \%hold_pickup_delay_by_branch );
634
$template->param( pickup_delays => \%hold_pickup_delay_by_branch );
631
- 

Return to bug 8367