|
Lines 6-11
Link Here
|
| 6 |
[% USE ItemTypes %] |
6 |
[% USE ItemTypes %] |
| 7 |
[% USE AuthorisedValues %] |
7 |
[% USE AuthorisedValues %] |
| 8 |
[% USE TablesSettings %] |
8 |
[% USE TablesSettings %] |
|
|
9 |
[% PROCESS 'i18n.inc' %] |
| 9 |
[% PROCESS 'member-display-address-style.inc' %] |
10 |
[% PROCESS 'member-display-address-style.inc' %] |
| 10 |
[% SET footerjs = 1 %] |
11 |
[% SET footerjs = 1 %] |
| 11 |
[% BLOCK display_bormessagepref %] |
12 |
[% BLOCK display_bormessagepref %] |
|
Lines 217-222
Link Here
|
| 217 |
</div> |
218 |
</div> |
| 218 |
[% END %] |
219 |
[% END %] |
| 219 |
|
220 |
|
|
|
221 |
<!-- Bundle has items missing --> |
| 222 |
[% IF missing_items %] |
| 223 |
<div id="bundle_missing_items" class="dialog alert"> |
| 224 |
<h3>Bundle had missing items</h3> |
| 225 |
<p>Bundle contents list updated</p> |
| 226 |
<p><a class="btn btn-default btn-xs" role="button" data-toggle="modal" href="#bundleContentsModal"><i class="fa fa-eye" aria-hidden="true"></i> View updated contents list</a></p> |
| 227 |
</div> |
| 228 |
[% END %] |
| 229 |
|
| 230 |
<!-- Bundle contained unexpected items --> |
| 231 |
[% IF unexpected_items %] |
| 232 |
<div id="bundle_unexpected_items" class="dialog alert"> |
| 233 |
<h3>Bundle had unexpected items</h3> |
| 234 |
<p>Please place the following items to one side</p> |
| 235 |
<ul> |
| 236 |
[% FOREACH unexpected_item IN unexpected_items %] |
| 237 |
<li>[% INCLUDE 'biblio-title.inc' biblio=unexpected_item.biblio %] - [% unexpected_item.barcode | html %]</li> |
| 238 |
[% END %] |
| 239 |
</ul> |
| 240 |
</div> |
| 241 |
[% END %] |
| 242 |
|
| 243 |
<!-- Item checked in outside of bundle --> |
| 244 |
[% IF InBundle %] |
| 245 |
<div id="bundle_item_outside" class="dialog alert audio-alert-warning"> |
| 246 |
<h3>Item belongs in bundle</h3> |
| 247 |
<p>This item belongs to a bundle: [% INCLUDE 'biblio-title.inc' biblio=InBundle.biblio %] - [% InBundle.barcode | html %]</p> |
| 248 |
<p><button class="btn btn-default btn-xs bundle_remove" role="button" data-itemnumber="[% itemnumber | uri %]" data-hostnumber="[% InBundle.itemnumber | uri %]"><i class="fa fa-minus"></i> Remove from bundle</button></p> |
| 249 |
</div> |
| 250 |
[% END %] |
| 220 |
|
251 |
|
| 221 |
[% IF ( errmsgloop ) %] |
252 |
[% IF ( errmsgloop ) %] |
| 222 |
<div class="dialog alert audio-alert-warning"> |
253 |
<div class="dialog alert audio-alert-warning"> |
|
Lines 381-386
Link Here
|
| 381 |
</div> |
412 |
</div> |
| 382 |
[% END %] |
413 |
[% END %] |
| 383 |
|
414 |
|
|
|
415 |
[% IF items_bundle_return_confirmation %] |
| 416 |
<div id="bundle-needsconfirmation-modal" class="modal fade audio-alert-action block"> |
| 417 |
<div class="modal-dialog modal-wide"> |
| 418 |
<div class="modal-content"> |
| 419 |
<form method="post"> |
| 420 |
<div class="modal-header"> |
| 421 |
<h3>Please confirm bundle contents</h3> |
| 422 |
</div> |
| 423 |
<div class="modal-body"> |
| 424 |
|
| 425 |
<table class="table table-condensed table-bordered" id="items-bundle-contents-table"> |
| 426 |
<thead> |
| 427 |
<tr> |
| 428 |
<th>[% t('Title') | html %]</th> |
| 429 |
<th>[% t('Author') | html %]</th> |
| 430 |
<th>[% t('Item type') | html %]</th> |
| 431 |
<th>[% t('Barcode') | html %]</th> |
| 432 |
<th>[% t('Status') | html %]</th> |
| 433 |
</tr> |
| 434 |
</thead> |
| 435 |
<tbody> |
| 436 |
[% FOREACH bundle_item IN item.bundle_items %] |
| 437 |
<tr data-barcode="[% bundle_item.barcode | html %]"> |
| 438 |
<td>[% INCLUDE 'biblio-title.inc' biblio=bundle_item.biblio link = 1 %]</td> |
| 439 |
<td>[% bundle_item.biblio.author | html %]</td> |
| 440 |
<td>[% ItemTypes.GetDescription(bundle_item.itype) | html %]</td> |
| 441 |
<td>[% bundle_item.barcode | html %]</td> |
| 442 |
<td>[% INCLUDE 'item-status.inc' item=bundle_item %]</td> |
| 443 |
</tr> |
| 444 |
[% END %] |
| 445 |
</tbody> |
| 446 |
</table> |
| 447 |
|
| 448 |
<div class="form-group"> |
| 449 |
<label for="verify-items-bundle-contents-barcodes">Barcodes</label> |
| 450 |
<textarea autocomplete="off" id="verify-items-bundle-contents-barcodes" name="verify-items-bundle-contents-barcodes" class="form-control"></textarea> |
| 451 |
<div class="help-block">[% t('Scan all barcodes of items found in the items bundle. If any items are missing, they will be marked as lost') | html %]</div> |
| 452 |
</div> |
| 453 |
|
| 454 |
</div> |
| 455 |
<div class="modal-footer"> |
| 456 |
<input type="hidden" name="barcode" value="[% item.barcode | html %]"> |
| 457 |
<input type="hidden" name="confirm_items_bundle_return" value="1"> |
| 458 |
[% FOREACH inputloo IN inputloop %] |
| 459 |
<input type="hidden" name="ri-[% inputloo.counter | html %]" value="[% inputloo.barcode | html %]" /> |
| 460 |
<input type="hidden" name="dd-[% inputloo.counter | html %]" value="[% inputloo.duedate | html %]" /> |
| 461 |
<input type="hidden" name="bn-[% inputloo.counter | html %]" value="[% inputloo.borrowernumber | html %]" /> |
| 462 |
[% END %] |
| 463 |
<button type="submit" class="btn btn-default"><i class="fa fa-check"></i> [% t('Confirm checkin and mark missing items as lost') | html %]</button> |
| 464 |
<button type="button" data-dismiss="modal" class="btn btn-default"><i class="fa fa-close"></i> [% t('Cancel') | html %]</button> |
| 465 |
</div> |
| 466 |
</form> |
| 467 |
</div> |
| 468 |
</div> |
| 469 |
</div> |
| 470 |
[% END %] |
| 471 |
|
| 384 |
[% IF wrongbranch %] |
472 |
[% IF wrongbranch %] |
| 385 |
<div id="wrong-branch-modal" class="modal fade audio-alert-action block"> |
473 |
<div id="wrong-branch-modal" class="modal fade audio-alert-action block"> |
| 386 |
<div class="modal-dialog"> |
474 |
<div class="modal-dialog"> |
|
Lines 1180-1185
Link Here
|
| 1180 |
[% INCLUDE 'modals/resolve_return_claim.inc' %] |
1268 |
[% INCLUDE 'modals/resolve_return_claim.inc' %] |
| 1181 |
[% END %] |
1269 |
[% END %] |
| 1182 |
|
1270 |
|
|
|
1271 |
[% INCLUDE 'modals/bundle_contents.inc' %] |
| 1272 |
|
| 1183 |
[% MACRO jsinclude BLOCK %] |
1273 |
[% MACRO jsinclude BLOCK %] |
| 1184 |
[% INCLUDE 'datatables.inc' %] |
1274 |
[% INCLUDE 'datatables.inc' %] |
| 1185 |
[% INCLUDE 'columns_settings.inc' %] |
1275 |
[% INCLUDE 'columns_settings.inc' %] |
|
Lines 1364-1371
Link Here
|
| 1364 |
window.open("/cgi-bin/koha/members/printslip.pl?borrowernumber=" + borrowernumber + "&print=checkinslip", "printwindow"); |
1454 |
window.open("/cgi-bin/koha/members/printslip.pl?borrowernumber=" + borrowernumber + "&print=checkinslip", "printwindow"); |
| 1365 |
}); |
1455 |
}); |
| 1366 |
|
1456 |
|
|
|
1457 |
// item bundles |
| 1458 |
$('#verify-items-bundle-contents-barcodes').on('input', function (ev) { |
| 1459 |
const barcodes = ev.target.value.split('\n').map(function(s) { return s.trim() }); |
| 1460 |
$('#items-bundle-contents-table tr').each(function () { |
| 1461 |
const barcode = this.getAttribute('data-barcode'); |
| 1462 |
if (barcodes.includes(barcode)) { |
| 1463 |
this.classList.add('ok'); |
| 1464 |
} else { |
| 1465 |
this.classList.remove('ok'); |
| 1466 |
} |
| 1467 |
}) |
| 1468 |
}); |
| 1469 |
|
| 1470 |
$('.bundle_remove').on('click', function() { |
| 1471 |
var component_itemnumber = $(this).data('itemnumber'); |
| 1472 |
var host_itemnumber = $(this).data('hostnumber'); |
| 1473 |
var alert = $(this).closest('div'); |
| 1474 |
var unlink_item_url = "/api/v1/items/" + host_itemnumber + "/bundled_items/item/" + component_itemnumber; |
| 1475 |
$.ajax({ |
| 1476 |
type: "DELETE", |
| 1477 |
url: unlink_item_url, |
| 1478 |
success: function(){ |
| 1479 |
alert.remove(); |
| 1480 |
} |
| 1481 |
}); |
| 1482 |
}); |
| 1483 |
|
| 1484 |
// print modals |
| 1485 |
$('.modal.printable').on('shown.bs.modal', function() { |
| 1486 |
$('.modal-dialog', this).addClass('focused'); |
| 1487 |
$('body').addClass('modalprinter'); |
| 1488 |
|
| 1489 |
if ($(this).hasClass('autoprint')) { |
| 1490 |
window.print(); |
| 1491 |
} |
| 1492 |
}).on('hidden.bs.modal', function() { |
| 1493 |
$('.modal-dialog', this).removeClass('focused'); |
| 1494 |
$('body').removeClass('modalprinter'); |
| 1495 |
}); |
| 1496 |
|
| 1497 |
$('.printModal').click(function() { |
| 1498 |
window.print(); |
| 1499 |
}); |
| 1367 |
}); |
1500 |
}); |
| 1368 |
</script> |
1501 |
</script> |
|
|
1502 |
|
| 1369 |
[% END %] |
1503 |
[% END %] |
| 1370 |
|
1504 |
|
| 1371 |
[% INCLUDE 'intranet-bottom.inc' %] |
1505 |
[% INCLUDE 'intranet-bottom.inc' %] |
| 1372 |
- |
|
|