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

(-)a/koha-tmpl/intranet-tmpl/prog/en/modules/reserve/request.tt (-6 / +50 lines)
Lines 1534-1539 Link Here
1534
        $.fn.select2.defaults.set("width", "100%" );
1534
        $.fn.select2.defaults.set("width", "100%" );
1535
        $.fn.select2.defaults.set("dropdownAutoWidth", true );
1535
        $.fn.select2.defaults.set("dropdownAutoWidth", true );
1536
1536
1537
        var pickup_locations_by_item = {};
1538
1537
        $(document).ready(function() {
1539
        $(document).ready(function() {
1538
            $('#cancellation-reason-fieldset').hide();
1540
            $('#cancellation-reason-fieldset').hide();
1539
            $('.rank-request').on('change', function() {
1541
            $('.rank-request').on('change', function() {
Lines 1563-1577 Link Here
1563
                ToggleHoldsToPlace();
1565
                ToggleHoldsToPlace();
1564
            });
1566
            });
1565
1567
1566
            [% IF Koha.Preference('UseBranchTransferLimits') %]
1568
            function setPickupLocation (select) {
1567
                $("#pickup,#pickup-next-avail,#pickup-item-group").on('change', function(){
1569
                var item_id = select.data('item-id');
1568
                    var pickup = $(this).val();
1570
                var url = '/api/v1/items/' + encodeURIComponent(item_id) + '/pickup_locations';
1571
1572
                $.ajax({
1573
                    dataType: 'json',
1574
                    url: url,
1575
                    data: {
1576
                        "q": JSON.stringify({
1577
                            "name": {
1578
                                "-like":'%'+(($.param().term === undefined) ? '' : $.param().term)+'%'
1579
                            }
1580
                        }),
1581
                        "_order_by": "name",
1582
                        "_page": $.param().page,
1583
                        "patron_id": select.data('patron-id')
1584
                    },
1585
                    success: function(data) {
1586
                        pickup_locations_by_item[`${item_id}`] = [];
1587
                        data.forEach(function (pickup_location) {
1588
                            pickup_locations_by_item[`${item_id}`].push({
1589
                                "id": pickup_location.library_id,
1590
                                "name": pickup_location.name
1591
                            });
1592
                        });
1593
                    }
1594
                });
1595
            }
1596
1597
            $("#pickup,#pickup-next-avail,#pickup-item-group").on('change', function(){
1598
                var pickup = $(this).val();
1599
                [% IF Koha.Preference('UseBranchTransferLimits') %]
1569
                    var url = "?pickup=" + pickup;
1600
                    var url = "?pickup=" + pickup;
1570
                    url += "&borrowernumber=" + borrowernumber;
1601
                    url += "&borrowernumber=" + borrowernumber;
1571
                    url += "&biblionumber=" + biblionumbers[0];
1602
                    url += "&biblionumber=" + biblionumbers[0];
1572
                    window.location.replace(url);
1603
                    window.location.replace(url);
1573
                });
1604
                [% ELSE %]
1574
            [% END %]
1605
                    $(".pickup_locations").each(function () {
1606
                        const pickup_locations = pickup_locations_by_item[$(this).data('item-id')];
1607
                        if (pickup_locations) {
1608
                            const location = pickup_locations.find((pickup_location) => pickup_location.id === pickup);
1609
                            if (location) {
1610
                                var option = $("<option>").val(location.id).text(location.name).attr("selected", "selected");
1611
                                $(this).append(option).trigger('change');
1612
                                $(this).val(location.id);
1613
                                $(this).pickup_locations_dropdown();
1614
                            }
1615
                        }
1616
                    });
1617
                [% END %]
1618
            });
1575
1619
1576
            var my_table = $("#requestspecific").dataTable($.extend(true, {}, dataTablesDefaults, {
1620
            var my_table = $("#requestspecific").dataTable($.extend(true, {}, dataTablesDefaults, {
1577
                "paginate": false,
1621
                "paginate": false,
Lines 1676-1681 Link Here
1676
1720
1677
            $(".pickup_locations").each(function () {
1721
            $(".pickup_locations").each(function () {
1678
                $(this).pickup_locations_dropdown();
1722
                $(this).pickup_locations_dropdown();
1723
                setPickupLocation($(this));
1679
            });
1724
            });
1680
        });
1725
        });
1681
1726
1682
- 

Return to bug 31579