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

(-)a/Koha/Hold.pm (-2 / +2 lines)
Lines 206-213 sub set_waiting { Link Here
206
    my $max_pickup_delay = C4::Context->preference("ReservesMaxPickUpDelay");
206
    my $max_pickup_delay = C4::Context->preference("ReservesMaxPickUpDelay");
207
    my $cancel_on_holidays = C4::Context->preference('ExpireReservesOnHolidays');
207
    my $cancel_on_holidays = C4::Context->preference('ExpireReservesOnHolidays');
208
208
209
    my $new_expiration_date = $today->clone->add(days => $max_pickup_delay);
210
211
    my $rule = Koha::CirculationRules->get_effective_rule({
209
    my $rule = Koha::CirculationRules->get_effective_rule({
212
        categorycode => $self->borrower->categorycode,
210
        categorycode => $self->borrower->categorycode,
213
        itemtype => $self->item->effective_itemtype,
211
        itemtype => $self->item->effective_itemtype,
Lines 219-224 sub set_waiting { Link Here
219
        $max_pickup_delay = $rule->rule_value;
217
        $max_pickup_delay = $rule->rule_value;
220
    }
218
    }
221
219
220
    my $new_expiration_date = $today->clone->add(days => $max_pickup_delay);
221
222
    if ( C4::Context->preference("ExcludeHolidaysFromMaxPickUpDelay") ) {
222
    if ( C4::Context->preference("ExcludeHolidaysFromMaxPickUpDelay") ) {
223
        my $itemtype = $self->item ? $self->item->effective_itemtype : $self->biblio->itemtype;
223
        my $itemtype = $self->item ? $self->item->effective_itemtype : $self->biblio->itemtype;
224
        my $daysmode = Koha::CirculationRules->get_effective_daysmode(
224
        my $daysmode = Koha::CirculationRules->get_effective_daysmode(
(-)a/admin/smart-rules.pl (-1 / +1 lines)
Lines 299-305 elsif ($op eq 'add') { Link Here
299
    my $recall_due_date_interval = $input->param('recall_due_date_interval');
299
    my $recall_due_date_interval = $input->param('recall_due_date_interval');
300
    my $recall_overdue_fine = $input->param('recall_overdue_fine');
300
    my $recall_overdue_fine = $input->param('recall_overdue_fine');
301
    my $recall_shelf_time = $input->param('recall_shelf_time');
301
    my $recall_shelf_time = $input->param('recall_shelf_time');
302
    my $holds_pickup_period = strip_non_numeric($input->param('holds_pickup_period'));
302
    my $holds_pickup_period = strip_non_numeric( scalar $input->param('holds_pickup_period') );
303
303
304
    my $rules = {
304
    my $rules = {
305
        maxissueqty                   => $maxissueqty,
305
        maxissueqty                   => $maxissueqty,
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt (-10 / +14 lines)
Lines 276-282 Link Here
276
                                        </ul>
276
                                        </ul>
277
277
278
                                        [% IF pickup_delays %]
278
                                        [% IF pickup_delays %]
279
                                            <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>
279
                                            <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>
280
                                        [% END %]
280
                                        [% END %]
281
281
282
                                        <a class="toggle-hold-options" id="toggle-hold-options-[% bibitemloo.biblionumber | html %]" style="display:none;" href="#">Show more options</a>
282
                                        <a class="toggle-hold-options" id="toggle-hold-options-[% bibitemloo.biblionumber | html %]" style="display:none;" href="#">Show more options</a>
Lines 504-516 Link Here
504
    var MSG_NO_ITEM_SELECTED = _("Expecting a specific item selection.");
504
    var MSG_NO_ITEM_SELECTED = _("Expecting a specific item selection.");
505
505
506
    function calculate_delay_days(){
506
    function calculate_delay_days(){
507
        var selected_branch = $("#branch_1").val();
507
        $(".branch > select").each(function(){
508
        [% FOREACH branchcode IN pickup_delays.keys %]
508
            var selected_branch = $(this).val();
509
            var branchcode = "[% branchcode | html %]";
509
            var branch_biblionumber = $(this).attr('id');
510
            if ( branchcode == selected_branch ) {
510
            var biblionumber = branch_biblionumber.slice( branch_biblionumber.indexOf('_')+1 );
511
                $("#pickup_delay_days").text([% pickup_delays.$branchcode | html %]);
511
            [% FOREACH branchcode IN pickup_delays.keys %]
512
            }
512
                var branchcode = "[% branchcode | html %]";
513
        [% END %]
513
                if ( branchcode == selected_branch ) {
514
                    $("#pickup_delay_days_" + biblionumber).text([% pickup_delays.$branchcode | html %]);
515
                }
516
            [% END %]
517
        });
514
    }
518
    }
515
519
516
    $(document).ready(function() {
520
    $(document).ready(function() {
Lines 521-528 Link Here
521
        });
525
        });
522
526
523
        calculate_delay_days();
527
        calculate_delay_days();
524
        $("#pickup_delay").show();
528
        $(".pickup_delay").show();
525
        $("#branch_1").change(function(){
529
        $(".branch > select").change(function(){
526
            calculate_delay_days();
530
            calculate_delay_days();
527
        });
531
        });
528
532
(-)a/opac/opac-reserve.pl (-3 / +6 lines)
Lines 693-699 if ( Link Here
693
    );
693
    );
694
}
694
}
695
695
696
my @branches = Koha::Libraries->search();
696
my @branches = Koha::Libraries->search->as_list;
697
my %hold_pickup_delay_by_branch = ();
697
my %hold_pickup_delay_by_branch = ();
698
698
699
foreach my $branch ( @branches ) {
699
foreach my $branch ( @branches ) {
Lines 703-709 foreach my $branch ( @branches ) { Link Here
703
        itemtype => undef,
703
        itemtype => undef,
704
        rule_name => 'holds_pickup_period',
704
        rule_name => 'holds_pickup_period',
705
    });
705
    });
706
    $hold_pickup_delay_by_branch{$branch->branchcode} = $rule->rule_value if ( $rule and $rule->rule_value );
706
    if ( $rule and $rule->rule_value ) {
707
        $hold_pickup_delay_by_branch{$branch->branchcode} = $rule->rule_value;
708
    } else {
709
        $hold_pickup_delay_by_branch{$branch->branchcode} = C4::Context->preference('ReservesMaxPickUpDelay');
710
    }
707
}
711
}
708
712
709
$template->param( pickup_delays => \%hold_pickup_delay_by_branch );
713
$template->param( pickup_delays => \%hold_pickup_delay_by_branch );
710
- 

Return to bug 8367