Lines 3-16
$(document).ready(function() {
Link Here
|
3 |
|
3 |
|
4 |
var barcodefield = $("#barcode"); |
4 |
var barcodefield = $("#barcode"); |
5 |
|
5 |
|
|
|
6 |
var onHoldDueDateSet = false; |
7 |
|
8 |
var onHoldChecked = function() { |
9 |
var isChecked = false; |
10 |
$('input[data-on-reserve]').each(function() { |
11 |
if ($(this).is(':checked')) { |
12 |
isChecked=true; |
13 |
} |
14 |
}); |
15 |
return isChecked; |
16 |
}; |
17 |
|
18 |
var showHideOnHoldRenewal = function() { |
19 |
// Display the date input |
20 |
if (onHoldChecked()) { |
21 |
$('#newonholdduedate').show() |
22 |
} else { |
23 |
$('#newonholdduedate').hide(); |
24 |
} |
25 |
}; |
26 |
|
6 |
// Handle the select all/none links for checkouts table columns |
27 |
// Handle the select all/none links for checkouts table columns |
7 |
$("#CheckAllRenewals").on("click",function(){ |
28 |
$("#CheckAllRenewals").on("click",function(){ |
8 |
$("#UncheckAllCheckins").click(); |
29 |
$("#UncheckAllCheckins").click(); |
9 |
$(".renew:visible").prop("checked", true); |
30 |
$(".renew:visible").prop("checked", true); |
|
|
31 |
showHideOnHoldRenewal(); |
10 |
return false; |
32 |
return false; |
11 |
}); |
33 |
}); |
12 |
$("#UncheckAllRenewals").on("click",function(){ |
34 |
$("#UncheckAllRenewals").on("click",function(){ |
13 |
$(".renew:visible").prop("checked", false); |
35 |
$(".renew:visible").prop("checked", false); |
|
|
36 |
showHideOnHoldRenewal(); |
14 |
return false; |
37 |
return false; |
15 |
}); |
38 |
}); |
16 |
|
39 |
|
Lines 24-29
$(document).ready(function() {
Link Here
|
24 |
return false; |
47 |
return false; |
25 |
}); |
48 |
}); |
26 |
|
49 |
|
|
|
50 |
$("#newduedate").on("change", function() { |
51 |
if (!onHoldDueDateSet) { |
52 |
$('#newonholdduedate input').val($('#newduedate').val()); |
53 |
} |
54 |
}); |
55 |
|
56 |
$("#newonholdduedate").on("change", function() { |
57 |
onHoldDueDateSet = true; |
58 |
}); |
59 |
|
27 |
// Don't allow both return and renew checkboxes to be checked |
60 |
// Don't allow both return and renew checkboxes to be checked |
28 |
$(document).on("change", '.renew', function(){ |
61 |
$(document).on("change", '.renew', function(){ |
29 |
if ( $(this).is(":checked") ) { |
62 |
if ( $(this).is(":checked") ) { |
Lines 36-41
$(document).ready(function() {
Link Here
|
36 |
} |
69 |
} |
37 |
}); |
70 |
}); |
38 |
|
71 |
|
|
|
72 |
// Display on hold due dates input when an on hold item is |
73 |
// selected |
74 |
$(document).on('change', '.renew', function(){ |
75 |
showHideOnHoldRenewal(); |
76 |
}); |
77 |
|
39 |
$("#output_format > option:first-child").attr("selected", "selected"); |
78 |
$("#output_format > option:first-child").attr("selected", "selected"); |
40 |
$("select[name='csv_profile_id']").hide(); |
79 |
$("select[name='csv_profile_id']").hide(); |
41 |
$(document).on("change", '#issues-table-output-format', function(){ |
80 |
$(document).on("change", '#issues-table-output-format', function(){ |
Lines 92-109
$(document).ready(function() {
Link Here
|
92 |
$(".renew:checked:visible").each(function() { |
131 |
$(".renew:checked:visible").each(function() { |
93 |
var override_limit = $("#override_limit").is(':checked') ? 1 : 0; |
132 |
var override_limit = $("#override_limit").is(':checked') ? 1 : 0; |
94 |
|
133 |
|
|
|
134 |
var isOnReserve = $(this).data().hasOwnProperty('onReserve'); |
135 |
|
95 |
var itemnumber = $(this).val(); |
136 |
var itemnumber = $(this).val(); |
96 |
|
137 |
|
97 |
$(this).parent().parent().replaceWith("<img id='renew_" + itemnumber + "' src='" + interface + "/" + theme + "/img/spinner-small.gif' />"); |
138 |
$(this).parent().parent().replaceWith("<img id='renew_" + itemnumber + "' src='" + interface + "/" + theme + "/img/spinner-small.gif' />"); |
98 |
|
139 |
|
99 |
var params = { |
140 |
var params = { |
100 |
itemnumber: itemnumber, |
141 |
itemnumber: itemnumber, |
101 |
borrowernumber: borrowernumber, |
142 |
borrowernumber: borrowernumber, |
102 |
branchcode: branchcode, |
143 |
branchcode: branchcode, |
103 |
override_limit: override_limit, |
144 |
override_limit: override_limit, |
104 |
date_due: $("#newduedate").val() |
|
|
105 |
}; |
145 |
}; |
106 |
|
146 |
|
|
|
147 |
// Determine which due date we need to use |
148 |
var dueDate = isOnReserve ? |
149 |
$("#newonholdduedate input").val() : |
150 |
$("#newduedate").val(); |
151 |
|
152 |
if (dueDate && dueDate.length > 0) { |
153 |
params.date_due = dueDate |
154 |
} |
155 |
|
107 |
$.post( "/cgi-bin/koha/svc/renew", params, function( data ) { |
156 |
$.post( "/cgi-bin/koha/svc/renew", params, function( data ) { |
108 |
var id = "#renew_" + data.itemnumber; |
157 |
var id = "#renew_" + data.itemnumber; |
109 |
|
158 |
|
Lines 146-151
$(document).ready(function() {
Link Here
|
146 |
$("#RenewAll").on("click",function(){ |
195 |
$("#RenewAll").on("click",function(){ |
147 |
$("#CheckAllRenewals").click(); |
196 |
$("#CheckAllRenewals").click(); |
148 |
$("#UncheckAllCheckins").click(); |
197 |
$("#UncheckAllCheckins").click(); |
|
|
198 |
showHideOnHoldRenewal(); |
149 |
$("#RenewCheckinChecked").click(); |
199 |
$("#RenewCheckinChecked").click(); |
150 |
|
200 |
|
151 |
// Prevent form submit |
201 |
// Prevent form submit |
Lines 344-422
$(document).ready(function() {
Link Here
|
344 |
"bVisible": AllowCirculate ? true : false, |
394 |
"bVisible": AllowCirculate ? true : false, |
345 |
"mDataProp": function ( oObj ) { |
395 |
"mDataProp": function ( oObj ) { |
346 |
var content = ""; |
396 |
var content = ""; |
|
|
397 |
var msg = ""; |
347 |
var span_style = ""; |
398 |
var span_style = ""; |
348 |
var span_class = ""; |
399 |
var span_class = ""; |
349 |
|
400 |
|
350 |
content += "<span>"; |
|
|
351 |
content += "<span style='padding: 0 1em;'>" + oObj.renewals_count + "</span>"; |
352 |
|
353 |
if ( oObj.can_renew ) { |
401 |
if ( oObj.can_renew ) { |
354 |
// Do nothing |
402 |
// Do nothing |
355 |
} else if ( oObj.can_renew_error == "on_reserve" ) { |
403 |
} else if ( oObj.can_renew_error == "on_reserve" ) { |
356 |
content += "<span class='renewals-disabled-no-override'>" |
404 |
msg += "<span class='renewals-disabled-no-override'>" |
357 |
+ "<a href='/cgi-bin/koha/reserve/request.pl?biblionumber=" + oObj.biblionumber + "'>" + ON_HOLD + "</a>" |
405 |
+ "<a href='/cgi-bin/koha/reserve/request.pl?biblionumber=" + oObj.biblionumber + "'>" + ON_HOLD + "</a>" |
358 |
+ "</span>"; |
406 |
+ "</span>"; |
359 |
|
407 |
|
360 |
span_style = "display: none"; |
408 |
span_style = AllowRenewalLimitOverride ? "" : "display: none"; |
361 |
span_class = "renewals-allowed"; |
409 |
span_class = "renewals-allowed"; |
362 |
} else if ( oObj.can_renew_error == "too_many" ) { |
410 |
} else if ( oObj.can_renew_error == "too_many" ) { |
363 |
content += "<span class='renewals-disabled'>" |
411 |
msg += "<span class='renewals-disabled'>" |
364 |
+ NOT_RENEWABLE |
412 |
+ NOT_RENEWABLE |
365 |
+ "</span>"; |
413 |
+ "</span>"; |
366 |
|
414 |
|
367 |
span_style = "display: none"; |
415 |
span_style = "display: none"; |
368 |
span_class = "renewals-allowed"; |
416 |
span_class = "renewals-allowed"; |
369 |
} else if ( oObj.can_renew_error == "restriction" ) { |
417 |
} else if ( oObj.can_renew_error == "restriction" ) { |
370 |
content += "<span class='renewals-disabled'>" |
418 |
msg += "<span class='renewals-disabled'>" |
371 |
+ NOT_RENEWABLE_RESTRICTION |
419 |
+ NOT_RENEWABLE_RESTRICTION |
372 |
+ "</span>"; |
420 |
+ "</span>"; |
373 |
|
421 |
|
374 |
span_style = "display: none"; |
422 |
span_style = "display: none"; |
375 |
span_class = "renewals-allowed"; |
423 |
span_class = "renewals-allowed"; |
376 |
} else if ( oObj.can_renew_error == "overdue" ) { |
424 |
} else if ( oObj.can_renew_error == "overdue" ) { |
377 |
content += "<span class='renewals-disabled'>" |
425 |
msg += "<span class='renewals-disabled'>" |
378 |
+ NOT_RENEWABLE_OVERDUE |
426 |
+ NOT_RENEWABLE_OVERDUE |
379 |
+ "</span>"; |
427 |
+ "</span>"; |
380 |
|
428 |
|
381 |
span_style = "display: none"; |
429 |
span_style = "display: none"; |
382 |
span_class = "renewals-allowed"; |
430 |
span_class = "renewals-allowed"; |
383 |
} else if ( oObj.can_renew_error == "too_soon" ) { |
431 |
} else if ( oObj.can_renew_error == "too_soon" ) { |
384 |
content += "<span class='renewals-disabled'>" |
432 |
msg += "<span class='renewals-disabled'>" |
385 |
+ NOT_RENEWABLE_TOO_SOON.format( oObj.can_renew_date ) |
433 |
+ NOT_RENEWABLE_TOO_SOON.format( oObj.can_renew_date ) |
386 |
+ "</span>"; |
434 |
+ "</span>"; |
387 |
|
435 |
|
388 |
span_style = "display: none"; |
436 |
span_style = "display: none"; |
389 |
span_class = "renewals-allowed"; |
437 |
span_class = "renewals-allowed"; |
390 |
} else if ( oObj.can_renew_error == "auto_too_soon" ) { |
438 |
} else if ( oObj.can_renew_error == "auto_too_soon" ) { |
391 |
content += "<span class='renewals-disabled'>" |
439 |
msg += "<span class='renewals-disabled'>" |
392 |
+ NOT_RENEWABLE_AUTO_TOO_SOON |
440 |
+ NOT_RENEWABLE_AUTO_TOO_SOON |
393 |
+ "</span>"; |
441 |
+ "</span>"; |
394 |
|
442 |
|
395 |
span_style = "display: none"; |
443 |
span_style = "display: none"; |
396 |
span_class = "renewals-allowed"; |
444 |
span_class = "renewals-allowed"; |
397 |
} else if ( oObj.can_renew_error == "auto_too_late" ) { |
445 |
} else if ( oObj.can_renew_error == "auto_too_late" ) { |
398 |
content += "<span class='renewals-disabled'>" |
446 |
msg += "<span class='renewals-disabled'>" |
399 |
+ NOT_RENEWABLE_AUTO_TOO_LATE |
447 |
+ NOT_RENEWABLE_AUTO_TOO_LATE |
400 |
+ "</span>"; |
448 |
+ "</span>"; |
401 |
|
449 |
|
402 |
span_style = "display: none"; |
450 |
span_style = "display: none"; |
403 |
span_class = "renewals-allowed"; |
451 |
span_class = "renewals-allowed"; |
404 |
} else if ( oObj.can_renew_error == "auto_too_much_oweing" ) { |
452 |
} else if ( oObj.can_renew_error == "auto_too_much_oweing" ) { |
405 |
content += "<span class='renewals-disabled'>" |
453 |
msg += "<span class='renewals-disabled'>" |
406 |
+ NOT_RENEWABLE_AUTO_TOO_MUCH_OWEING |
454 |
+ NOT_RENEWABLE_AUTO_TOO_MUCH_OWEING |
407 |
+ "</span>"; |
455 |
+ "</span>"; |
408 |
|
456 |
|
409 |
span_style = "display: none"; |
457 |
span_style = "display: none"; |
410 |
span_class = "renewals-allowed"; |
458 |
span_class = "renewals-allowed"; |
411 |
} else if ( oObj.can_renew_error == "auto_account_expired" ) { |
459 |
} else if ( oObj.can_renew_error == "auto_account_expired" ) { |
412 |
content += "<span class='renewals-disabled'>" |
460 |
msg += "<span class='renewals-disabled'>" |
413 |
+ NOT_RENEWABLE_AUTO_ACCOUNT_EXPIRED |
461 |
+ NOT_RENEWABLE_AUTO_ACCOUNT_EXPIRED |
414 |
+ "</span>"; |
462 |
+ "</span>"; |
415 |
|
463 |
|
416 |
span_style = "display: none"; |
464 |
span_style = "display: none"; |
417 |
span_class = "renewals-allowed"; |
465 |
span_class = "renewals-allowed"; |
418 |
} else if ( oObj.can_renew_error == "auto_renew" ) { |
466 |
} else if ( oObj.can_renew_error == "auto_renew" ) { |
419 |
content += "<span class='renewals-disabled'>" |
467 |
msg += "<span class='renewals-disabled'>" |
420 |
+ NOT_RENEWABLE_AUTO_RENEW |
468 |
+ NOT_RENEWABLE_AUTO_RENEW |
421 |
+ "</span>"; |
469 |
+ "</span>"; |
422 |
|
470 |
|
Lines 425-431
$(document).ready(function() {
Link Here
|
425 |
} else if ( oObj.can_renew_error == "onsite_checkout" ) { |
473 |
} else if ( oObj.can_renew_error == "onsite_checkout" ) { |
426 |
// Don't display something if it's an onsite checkout |
474 |
// Don't display something if it's an onsite checkout |
427 |
} else { |
475 |
} else { |
428 |
content += "<span class='renewals-disabled'>" |
476 |
msg += "<span class='renewals-disabled'>" |
429 |
+ oObj.can_renew_error |
477 |
+ oObj.can_renew_error |
430 |
+ "</span>"; |
478 |
+ "</span>"; |
431 |
|
479 |
|
Lines 433-449
$(document).ready(function() {
Link Here
|
433 |
span_class = "renewals-allowed"; |
481 |
span_class = "renewals-allowed"; |
434 |
} |
482 |
} |
435 |
|
483 |
|
436 |
var can_force_renew = ( oObj.onsite_checkout == 0 ) && ( oObj.can_renew_error != "on_reserve" ); |
484 |
var can_force_renew = ( oObj.onsite_checkout == 0 ) && |
|
|
485 |
( oObj.can_renew_error != "on_reserve" || (oObj.can_renew_error == "on_reserve" && AllowRenewalOnHoldOverride)) |
486 |
? true : false; |
437 |
var can_renew = ( oObj.renewals_remaining > 0 && !oObj.can_renew_error ); |
487 |
var can_renew = ( oObj.renewals_remaining > 0 && !oObj.can_renew_error ); |
|
|
488 |
content += "<span>"; |
438 |
if ( can_renew || can_force_renew ) { |
489 |
if ( can_renew || can_force_renew ) { |
|
|
490 |
content += "<span style='padding: 0 1em;'>" + oObj.renewals_count + "</span>"; |
439 |
content += "<span class='" + span_class + "' style='" + span_style + "'>" |
491 |
content += "<span class='" + span_class + "' style='" + span_style + "'>" |
440 |
+ "<input type='checkbox' "; |
492 |
+ "<input type='checkbox' "; |
441 |
if ( oObj.date_due_overdue && can_renew ) { |
493 |
if ( oObj.date_due_overdue && can_renew ) { |
442 |
content += "checked='checked' "; |
494 |
content += "checked='checked' "; |
443 |
} |
495 |
} |
|
|
496 |
if (oObj.can_renew_error == "on_reserve") { |
497 |
content += "data-on-reserve "; |
498 |
} |
444 |
content += "class='renew' id='renew_" + oObj.itemnumber + "' name='renew' value='" + oObj.itemnumber +"'/>" |
499 |
content += "class='renew' id='renew_" + oObj.itemnumber + "' name='renew' value='" + oObj.itemnumber +"'/>" |
445 |
+ "</span>"; |
500 |
+ "</span>"; |
446 |
|
501 |
} |
|
|
502 |
content += msg; |
503 |
if ( can_renew || can_force_renew ) { |
447 |
content += "<span class='renewals'>(" |
504 |
content += "<span class='renewals'>(" |
448 |
+ RENEWALS_REMAINING.format( oObj.renewals_remaining, oObj.renewals_allowed ) |
505 |
+ RENEWALS_REMAINING.format( oObj.renewals_remaining, oObj.renewals_allowed ) |
449 |
+ ")</span>"; |
506 |
+ ")</span>"; |