Lines 31-36
$("#placeBookingModal").on("show.bs.modal", function (e) {
Link Here
|
31 |
$("#booking_biblio_id").val(biblionumber); |
31 |
$("#booking_biblio_id").val(biblionumber); |
32 |
|
32 |
|
33 |
let patron_id = button.data("patron") || 0; |
33 |
let patron_id = button.data("patron") || 0; |
|
|
34 |
let pickup_library_id = button.data("pickup_library"); |
34 |
booking_item_id = button.data("itemnumber"); |
35 |
booking_item_id = button.data("itemnumber"); |
35 |
let start_date = button.data("start_date"); |
36 |
let start_date = button.data("start_date"); |
36 |
let end_date = button.data("end_date"); |
37 |
let end_date = button.data("end_date"); |
Lines 139-155
$("#placeBookingModal").on("show.bs.modal", function (e) {
Link Here
|
139 |
}); |
140 |
}); |
140 |
function setLocationsPicker(response) { |
141 |
function setLocationsPicker(response) { |
141 |
let $pickupSelect = $("#pickup_library_id"); |
142 |
let $pickupSelect = $("#pickup_library_id"); |
142 |
let bookableItemnumbers = bookable_items.map(function(object) { return object.item_id; }); |
143 |
let bookableItemnumbers = bookable_items.map(function (object) { |
|
|
144 |
return object.item_id; |
145 |
}); |
143 |
$pickupSelect.empty(); |
146 |
$pickupSelect.empty(); |
144 |
|
147 |
|
145 |
$.each(response, function(index, pickup_location) { |
148 |
$.each(response, function (index, pickup_location) { |
146 |
if (containsAny(pickup_location.pickup_items, bookableItemnumbers)) { |
149 |
if ( |
|
|
150 |
containsAny(pickup_location.pickup_items, bookableItemnumbers) |
151 |
) { |
147 |
let option = $( |
152 |
let option = $( |
148 |
'<option value="' + |
153 |
'<option value="' + |
149 |
pickup_location.library_id + |
154 |
pickup_location.library_id + |
150 |
'">' + |
155 |
'">' + |
151 |
pickup_location.name + |
156 |
pickup_location.name + |
152 |
"</option>" |
157 |
"</option>" |
153 |
); |
158 |
); |
154 |
|
159 |
|
155 |
option.attr( |
160 |
option.attr( |
Lines 166-172
$("#placeBookingModal").on("show.bs.modal", function (e) {
Link Here
|
166 |
}); |
171 |
}); |
167 |
|
172 |
|
168 |
$pickupSelect.prop("disabled", false); |
173 |
$pickupSelect.prop("disabled", false); |
169 |
$pickupSelect.val(null).trigger("change"); |
174 |
|
|
|
175 |
// If pickup_library alread exists, pre-select |
176 |
if (pickup_library_id) { |
177 |
$pickupSelect.val(pickup_library_id).trigger("change"); |
178 |
} else { |
179 |
$pickupSelect.val(null).trigger("change"); |
180 |
} |
170 |
} |
181 |
} |
171 |
|
182 |
|
172 |
// Item select2 |
183 |
// Item select2 |
Lines 195-210
$("#placeBookingModal").on("show.bs.modal", function (e) {
Link Here
|
195 |
success: function (response) { |
206 |
success: function (response) { |
196 |
if (dataFetched === true) { |
207 |
if (dataFetched === true) { |
197 |
setLocationsPicker(response); |
208 |
setLocationsPicker(response); |
198 |
|
|
|
199 |
} else { |
209 |
} else { |
200 |
var interval = setInterval(function() { |
210 |
var interval = setInterval(function () { |
201 |
if (dataFetched === true) { |
211 |
if (dataFetched === true) { |
202 |
// Data is fetched, execute the callback and stop the interval |
212 |
// Data is fetched, execute the callback and stop the interval |
203 |
setLocationsPicker(response); |
213 |
setLocationsPicker(response); |
204 |
clearInterval(interval); |
214 |
clearInterval(interval); |
205 |
} |
215 |
} |
206 |
}, 100); |
216 |
}, 100); |
207 |
}; |
217 |
} |
208 |
}, |
218 |
}, |
209 |
error: function (xhr, status, error) { |
219 |
error: function (xhr, status, error) { |
210 |
console.log("Pickup location fetch failed: ", error); |
220 |
console.log("Pickup location fetch failed: ", error); |
Lines 854-860
$("#placeBookingForm").on("submit", function (e) {
Link Here
|
854 |
}); |
864 |
}); |
855 |
|
865 |
|
856 |
$("#placeBookingModal").on("hidden.bs.modal", function (e) { |
866 |
$("#placeBookingModal").on("hidden.bs.modal", function (e) { |
857 |
|
|
|
858 |
// Reset patron select |
867 |
// Reset patron select |
859 |
$("#booking_patron_id").val(null).trigger("change"); |
868 |
$("#booking_patron_id").val(null).trigger("change"); |
860 |
$("#booking_patron_id").empty(); |
869 |
$("#booking_patron_id").empty(); |
861 |
- |
|
|