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

(-)a/koha-tmpl/opac-tmpl/bootstrap/en/includes/holds-table.inc (+3 lines)
Lines 56-61 Link Here
56
                                </strong>
56
                                </strong>
57
                            [% END %]
57
                            [% END %]
58
                            [% HOLD.biblio.author | html %]
58
                            [% HOLD.biblio.author | html %]
59
                            [% IF HOLD.item_group_id %]
60
                               <p>Next available item from item group: <strong>[% HOLD.item_group.description | html %]</strong></p>
61
                            [% END %]
59
                            [% IF HOLD.item_level_hold %]
62
                            [% IF HOLD.item_level_hold %]
60
                                <p class="hint">Item on hold: [% HOLD.item.barcode | html %]</p>
63
                                <p class="hint">Item on hold: [% HOLD.item.barcode | html %]</p>
61
                            [% END %]
64
                            [% END %]
(-)a/koha-tmpl/opac-tmpl/bootstrap/en/modules/opac-reserve.tt (-2 / +22 lines)
Lines 313-318 Link Here
313
                                                    </li>
313
                                                    </li>
314
                                                [% END %]
314
                                                [% END %]
315
315
316
                                                [% UNLESS bibitemloo.forced_hold_level && ( bibitemloo.forced_hold_level == 'item' || bibitemloo.forced_hold_level == 'record' ) %]
317
                                                    [% IF bibitemloo.object.item_groups %]
318
                                                        <li>
319
                                                            <label for="itemtype">Request specific item group:</label>
320
                                                            <select name="item_group_id_[% bibitemloo.biblionumber | html %]" id="item_group_id_[% bibitemloo.biblionumber | html %]">
321
                                                                <option value="">Any item group</option>
322
                                                                [% FOREACH g IN bibitemloo.object.item_groups.search({}, { order_by => ['display_order'] }) %]
323
                                                                    <option value="[% g.id | html %]">[% g.description | html %]</option>
324
                                                                [% END %]
325
                                                            </select>
326
                                                        </li>
327
                                                    [% END %]
328
                                                [% END %]
329
316
                                                [% IF ( OpacHoldNotes ) %]
330
                                                [% IF ( OpacHoldNotes ) %]
317
                                                    <li>
331
                                                    <li>
318
                                                        <div class="notesrow" id="notesrow_[% bibitemloo.biblionumber | html %]">
332
                                                        <div class="notesrow" id="notesrow_[% bibitemloo.biblionumber | html %]">
Lines 325-331 Link Here
325
                                                [% IF bibitemloo.itemholdable %]
339
                                                [% IF bibitemloo.itemholdable %]
326
                                                    <!-- ITEM HOLDS -->
340
                                                    <!-- ITEM HOLDS -->
327
                                                    <li class="lradio place_on_type" style="display:none;">
341
                                                    <li class="lradio place_on_type" style="display:none;">
328
                                                        [% IF NOT bibitemloo.force_hold %]
342
                                                        [% UNLESS bibitemloo.forced_hold_level == 'item' || bibitemloo.forced_hold_level == 'item_group' %]
329
                                                            <label class="radio inline" for="reqany_[% bibitemloo.biblionumber | html %]">Next available item</label>
343
                                                            <label class="radio inline" for="reqany_[% bibitemloo.biblionumber | html %]">Next available item</label>
330
                                                            <input type="radio" name="reqtype_[% bibitemloo.biblionumber | html %]"
344
                                                            <input type="radio" name="reqtype_[% bibitemloo.biblionumber | html %]"
331
                                                                    id="reqany_[% bibitemloo.biblionumber | html %]"
345
                                                                    id="reqany_[% bibitemloo.biblionumber | html %]"
Lines 580-589 Link Here
580
            var select_specific = $("#reqspecific_"+biblioNum).is(":checked");
594
            var select_specific = $("#reqspecific_"+biblioNum).is(":checked");
581
            // If the checkbox is checked AND we want a specific item, we display the items block
595
            // If the checkbox is checked AND we want a specific item, we display the items block
582
            if ( $(checkbox).is(":checked") && select_specific ) {
596
            if ( $(checkbox).is(":checked") && select_specific ) {
597
                if ( $(`#item_group_id_${biblioNum}`).length ) {
598
                    $(`#item_group_id_${biblioNum}`).val("").attr('disabled', 'disabled');
599
                }
583
                $(newCopiesRowId).show();
600
                $(newCopiesRowId).show();
584
            } else {
601
            } else {
602
                if ( $(`#item_group_id_${biblioNum}`).length ) {
603
                    $(`#item_group_id_${biblioNum}`).removeAttr('disabled');
604
                }
585
                $(newCopiesRowId).hide();
605
                $(newCopiesRowId).hide();
586
             }
606
            }
587
        };
607
        };
588
608
589
        $("#place_on_hdr").show();
609
        $("#place_on_hdr").show();
(-)a/opac/opac-reserve.pl (-1 / +5 lines)
Lines 280-285 if ( $query->param('place_reserve') ) { Link Here
280
            $itemNum = undef;
280
            $itemNum = undef;
281
        }
281
        }
282
        my $notes = $query->param('notes_'.$biblioNum)||'';
282
        my $notes = $query->param('notes_'.$biblioNum)||'';
283
        my $item_group_id = $query->param("item_group_id_$biblioNum") || undef;
283
284
284
        if (   $maxreserves
285
        if (   $maxreserves
285
            && $reserve_cnt >= $maxreserves )
286
            && $reserve_cnt >= $maxreserves )
Lines 311-316 if ( $query->param('place_reserve') ) { Link Here
311
                    itemnumber       => $itemNum,
312
                    itemnumber       => $itemNum,
312
                    found            => undef,
313
                    found            => undef,
313
                    itemtype         => $itemtype,
314
                    itemtype         => $itemtype,
315
                    item_group_id    => $item_group_id,
314
                }
316
                }
315
            );
317
            );
316
            $failed_holds++ unless $reserve_id;
318
            $failed_holds++ unless $reserve_id;
Lines 414-419 foreach my $biblioNum (@biblionumbers) { Link Here
414
    $biblioLoopIter{rank} = $biblioData->{rank};
416
    $biblioLoopIter{rank} = $biblioData->{rank};
415
    $biblioLoopIter{reservecount} = $biblioData->{reservecount};
417
    $biblioLoopIter{reservecount} = $biblioData->{reservecount};
416
    $biblioLoopIter{already_reserved} = $biblioData->{already_reserved};
418
    $biblioLoopIter{already_reserved} = $biblioData->{already_reserved};
419
    $biblioLoopIter{object} = $biblio;
417
420
418
    if (!$itemLevelTypes && $biblioData->{itemtype}) {
421
    if (!$itemLevelTypes && $biblioData->{itemtype}) {
419
        $biblioLoopIter{translated_description} = $itemtypes->{$biblioData->{itemtype}}{translated_description};
422
        $biblioLoopIter{translated_description} = $itemtypes->{$biblioData->{itemtype}}{translated_description};
Lines 571-577 foreach my $biblioNum (@biblionumbers) { Link Here
571
    )->forced_hold_level();
574
    )->forced_hold_level();
572
    if ($forced_hold_level) {
575
    if ($forced_hold_level) {
573
        $biblioLoopIter{force_hold}   = 1 if $forced_hold_level eq 'item';
576
        $biblioLoopIter{force_hold}   = 1 if $forced_hold_level eq 'item';
577
        $biblioLoopIter{force_hold}   = 0 if $forced_hold_level eq 'item_group';
574
        $biblioLoopIter{itemholdable} = 0 if $forced_hold_level eq 'record';
578
        $biblioLoopIter{itemholdable} = 0 if $forced_hold_level eq 'record';
579
        $biblioLoopIter{itemholdable} = 0 if $forced_hold_level eq 'item_group';
575
        $biblioLoopIter{forced_hold_level} = $forced_hold_level;
580
        $biblioLoopIter{forced_hold_level} = $forced_hold_level;
576
    }
581
    }
577
582
578
- 

Return to bug 24860