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

(-)a/koha-tmpl/intranet-tmpl/prog/en/includes/holds_table.inc (-1 / +9 lines)
Lines 49-55 Link Here
49
            [%- END -%]
49
            [%- END -%]
50
            [% SET tr_class = hold.suspend ? 'suspend' : '' %]
50
            [% SET tr_class = hold.suspend ? 'suspend' : '' %]
51
            <tr class="[% tr_class | html %]">
51
            <tr class="[% tr_class | html %]">
52
                <td><input type="checkbox" class="select_hold" data-id="[% hold.reserve_id | html %]" /></td>
52
                <td
53
                    ><input
54
                        type="checkbox"
55
                        class="select_hold"
56
                        data-id="[% hold.reserve_id | html %]"
57
                        data-item_level_hold="[% hold.item_level_hold | html %]"
58
                        data-itemnumber="[% hold.itemnumber | html %]"
59
                        data-biblionumber="[% hold.biblionumber %]"
60
                /></td>
53
                <td>
61
                <td>
54
                    <input type="hidden" name="reserve_id" value="[% hold.reserve_id | html %]" />
62
                    <input type="hidden" name="reserve_id" value="[% hold.reserve_id | html %]" />
55
                    <input type="hidden" name="borrowernumber" value="[% hold.borrowernumber | html %]" />
63
                    <input type="hidden" name="borrowernumber" value="[% hold.borrowernumber | html %]" />
(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt (-11 / +73 lines)
Lines 174-179 Link Here
174
        </div>
174
        </div>
175
    [% END %]
175
    [% END %]
176
176
177
    [% IF ( hold_move_successes ) %]
178
        <div class="alert alert-success">
179
            <p>Moved the following holds:</p>
180
            <ul>
181
                [% FOREACH hold IN hold_move_successes %]
182
                    <li>
183
                        <label>Hold ID: </label>
184
                        <span>[% hold.hold_id %]</span>
185
                        <span> - Moved from [%- INCLUDE 'biblio-title.inc' biblio=hold.original_biblio link = 1 -%] to [%- INCLUDE 'biblio-title.inc' biblio=hold.target_biblio link = 1 -%]</span>
186
                    </li>
187
                [% END %]
188
            </ul>
189
        </div>
190
    [% END %]
191
    [% IF ( hold_move_failures ) %]
192
        <div class="alert alert-warning">
193
            <strong>One or more holds were not moved due to following errors:</strong>
194
            <ul>
195
                [% FOREACH fail IN hold_move_failures %]
196
                    <li>
197
                        <label>Hold ID: </label>
198
                        <span>[% fail.hold_id %]</span>
199
                        [% SWITCH fail.error %]
200
                        [% CASE 'cannotReserveFromOtherBranches' %]
201
                            <span>Target item cannot be reserved from other branches</span>
202
                        [% CASE 'ageRestricted' %]
203
                            <span>The target record and/or items are age restricted</span>
204
                        [% CASE 'alreadypossession' %]
205
                            <span>Target item is already checked out to patron</span>
206
                        [% CASE 'noReservesAllowed' %]
207
                            <span>No holds are allowed on the target item(s)</span>
208
                        [% CASE 'tooManyReservesToday' %]
209
                            <span>Target item has too many holds placed on it today</span>
210
                        [% CASE 'tooManyReserves' %]
211
                            <span>Target item has too many holds placed on it</span>
212
                        [% CASE 'notReservable' %]
213
                            <span>Target item is not reservable</span>
214
                        [% CASE 'cannotReserveFromOtherBranches' %]
215
                            <span>Target item cannot be placed on reserve for this branch</span>
216
                        [% CASE 'branchNotInHoldGroup' %]
217
                            <span>Tagret item is not in the local hold group</span>
218
                        [% CASE 'notforloan' %]
219
                            <span>Target item is not for loan</span>
220
                        [% CASE 'damaged' %]
221
                            <span>Target item is damaged</span>
222
                        [% CASE %]
223
                            <span>Error: [% fail.error | html %]</span>
224
                        [% END %]
225
                    </li>
226
                [% END %]
227
            </ul>
228
        </div>
229
    [% END %]
230
177
    [% IF ( failed_holds ) %]
231
    [% IF ( failed_holds ) %]
178
        <div class="alert alert-warning">
232
        <div class="alert alert-warning">
179
            <strong>One or more holds were not placed due to following errors:</strong>
233
            <strong>One or more holds were not placed due to following errors:</strong>
Lines 1437-1448 Link Here
1437
            </div>
1491
            </div>
1438
            <div class="modal-body">
1492
            <div class="modal-body">
1439
                <div id="move_hold_item_selection">
1493
                <div id="move_hold_item_selection">
1440
                    <h3>Selected holds to move</h3>
1494
                    <h3>1. Review holds to move</h3>
1441
                    <table>
1495
                    <table class="table table-striped">
1442
                        <thead>
1496
                        <thead>
1443
                            <tr>
1497
                            <tr>
1444
                                <th>Hold ID</th>
1498
                                <th>Hold ID</th>
1445
                                <th>Item barcode ( current hold )</th>
1499
                                <th>Original hold</th>
1446
                            </tr>
1500
                            </tr>
1447
                        </thead>
1501
                        </thead>
1448
                        <tbody> </tbody>
1502
                        <tbody> </tbody>
Lines 1452-1470 Link Here
1452
                <div id="move_hold_item_search" class="alert alert-danger" style="display:none;"></div>
1506
                <div id="move_hold_item_search" class="alert alert-danger" style="display:none;"></div>
1453
                <form id="searchForm">
1507
                <form id="searchForm">
1454
                    <div id="move_hold_item_searchform">
1508
                    <div id="move_hold_item_searchform">
1509
                        <h3>2. Enter the item barcode of new hold target: </h3>
1455
                        <fieldset class="action">
1510
                        <fieldset class="action">
1456
                            <h3><label for="external_id">Enter the item barcode of new hold target: </label></h3>
1457
                            <input type="text" class="form-control" name="external_id" id="external_id" required />
1511
                            <input type="text" class="form-control" name="external_id" id="external_id" required />
1512
                            <button type="submit" class="btn btn-default mt-3">Search</button>
1458
                        </fieldset>
1513
                        </fieldset>
1459
                        <button type="submit" class="btn btn-success mt-3">Search</button>
1460
                    </div>
1514
                    </div>
1461
                </form>
1515
                </form>
1462
                <hr />
1463
                <form id="move_hold_item_form" method="post" action="request.pl">
1516
                <form id="move_hold_item_form" method="post" action="request.pl">
1464
                    [% INCLUDE 'csrf-token.inc' %]
1465
                    <input type="hidden" name="op" value="cud-move_hold_item" />
1466
                    <div id="resultMessage" class="mt-3"> </div>
1517
                    <div id="resultMessage" class="mt-3"> </div>
1467
                    <button type="submit" class="btn btn-primary mt-3">Move selected holds</button>
1518
                    <div id="move_hold_item_confirm" style="display:none;">
1519
                        <h3>3. Confirm moving of holds:</h3>
1520
                        [% INCLUDE 'csrf-token.inc' %]
1521
                        <input type="hidden" name="op" value="cud-move_hold_item" />
1522
                        <button type="submit" class="btn btn-primary mt-3">Move selected holds</button>
1523
                    </div>
1468
                </form>
1524
                </form>
1469
            </div>
1525
            </div>
1470
            <div class="modal-footer">
1526
            <div class="modal-footer">
Lines 1826-1831 Link Here
1826
1882
1827
            $(document).on("change", 'input[name="new_itemnumber"]', function() {
1883
            $(document).on("change", 'input[name="new_itemnumber"]', function() {
1828
                $('input[name="new_itemnumber"]').not(this).prop("checked", false);
1884
                $('input[name="new_itemnumber"]').not(this).prop("checked", false);
1885
                if ( $('input[name="new_itemnumber"]:checked').length ){
1886
                    $('#move_hold_item_confirm').show();
1887
                } else {
1888
                    $('#move_hold_item_confirm').hide();
1889
                }
1829
            });
1890
            });
1830
1891
1831
            $("#always_show_holds").change(function(){
1892
            $("#always_show_holds").change(function(){
Lines 1963-1971 Link Here
1963
                    $('#moveHoldItemModal').modal('show');
2024
                    $('#moveHoldItemModal').modal('show');
1964
                    $('.select_hold:checked').each( function() {
2025
                    $('.select_hold:checked').each( function() {
1965
                        let reserve_id = $(this).data('id');
2026
                        let reserve_id = $(this).data('id');
2027
                        let reserve_biblionumber = $(this).data('biblionumber');
2028
                        let reserve_itemnumber = $(this).data('itemnumber');
1966
                        let item_level_hold = $(this).data('item_level_hold');
2029
                        let item_level_hold = $(this).data('item_level_hold');
1967
                        let found_status = $(this).data('found');
2030
                        let found_status = $(this).data('found');
1968
                        $('#move_hold_item_selection table').append(`<tr><td>${reserve_id}</td><td></td></tr>`)
2031
                        $('#move_hold_item_selection table').append(`<tr><td>${reserve_id}</td><td>Biblionumber: <a target="_blank" href="/cgi-bin/koha/reserve/request.pl?biblionumber=${reserve_biblionumber}">${reserve_biblionumber}</a> Itemnumber: <a target="_blank" href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=${reserve_biblionumber}#item${reserve_itemnumber}">${reserve_itemnumber}</a></td></tr>`)
1969
                        if ( item_level_hold ) {
2032
                        if ( item_level_hold ) {
1970
                            $('#move_hold_item_form').append(`<input type="hidden" name="hold_id" value="${reserve_id}">`);
2033
                            $('#move_hold_item_form').append(`<input type="hidden" name="hold_id" value="${reserve_id}">`);
1971
                        }
2034
                        }
1972
- 

Return to bug 31698