Lines 537-627
Link Here
|
537 |
</div> |
537 |
</div> |
538 |
[% END%] |
538 |
[% END%] |
539 |
|
539 |
|
540 |
<div id="exemptfines" class="dialog message" style="display:none;"> |
540 |
|
541 |
<p>Fines for returned items are forgiven.</p> |
|
|
542 |
</div> |
543 |
<div id="forgivemanualholdsexpire-alert" class="dialog message" style="display:none;"> |
544 |
<p>Fines are not charged for manually cancelled holds.</p> |
545 |
</div> |
546 |
<div id="dropboxmode" class="dialog message" style="display:none;"> |
547 |
<p>Book drop mode. (Effective checkin date is [% dropboxdate %] ).</p> |
548 |
</div> |
549 |
</div> |
541 |
</div> |
550 |
<div class="yui-g"> |
542 |
|
551 |
<form id="checkin-form" method="post" action="/cgi-bin/koha/circ/returns.pl" autocomplete="off" > |
543 |
<form id="checkin-form" method="post" action="/cgi-bin/koha/circ/returns.pl" autocomplete="off"> |
552 |
<div class="yui-u first"> |
544 |
<fieldset id="circ_returns_checkin"> |
553 |
<fieldset> |
545 |
<h3>Check in</h3> |
554 |
<legend>Check in</legend> |
546 |
<div class="row"> |
555 |
<label for="barcode">Enter item barcode: </label> |
547 |
<div class="col-sm-6"> |
556 |
[% IF ( exemptfine ) %] |
548 |
<div class="hint">Enter item barcode:</div> |
557 |
<input name="barcode" id="barcode" size="14" class="focus alert"/> |
549 |
<div class="form-control-group"> |
558 |
[% ELSIF ( dropboxmode ) %] |
550 |
[% IF ( exemptfine ) %] |
559 |
<input name="barcode" id="barcode" size="14" class="focus alert"/> |
551 |
<input name="barcode" id="barcode" size="14" class="barcode focus input-warning" /> |
560 |
[% ELSE %] |
552 |
[% ELSIF ( dropboxmode ) %] |
561 |
<input name="barcode" id="barcode" size="14" class="focus"/> |
553 |
<input name="barcode" id="barcode" size="14" class="barcode focus input-warning" /> |
562 |
[% END %] |
554 |
[% ELSE %] |
563 |
<input type="submit" class="submit" value="Submit" /> |
555 |
<input name="barcode" id="barcode" size="14" class="barcode focus" /> |
|
|
556 |
[% END %] |
557 |
<button type="submit" class="btn btn-default">Check in</button> |
558 |
[% FOREACH inputloo IN inputloop %] |
559 |
<input type="hidden" name="ri-[% inputloo.counter %]" value="[% inputloo.barcode %]" /> |
560 |
<input type="hidden" name="dd-[% inputloo.counter %]" value="[% inputloo.duedate %]" /> |
561 |
<input type="hidden" name="bn-[% inputloo.counter %]" value="[% inputloo.borrowernumber %]" /> |
562 |
[% END %] |
563 |
</div> |
564 |
<div id="show-circ-settings"> |
565 |
<a href="#"><i class="fa circ-settings-icon fa-caret-down"></i> Checkin settings</a> |
566 |
</div> |
567 |
</div> |
568 |
<div class="col-sm-6"> |
569 |
<div id="exemptfines" class="checkin-active-setting" style="display:none;"> |
570 |
<p><i class="fa fa-check"></i> Fines for returned items are forgiven.</p> |
571 |
</div> |
572 |
<div id="forgivemanualholdsexpire-alert" class="checkin-active-setting" style="display:none;"> |
573 |
<p><i class="fa fa-check"></i> Fines are not charged for manually cancelled holds.</p> |
574 |
</div> |
575 |
<div id="dropboxmode" class="checkin-active-setting" style="display:none;"> |
576 |
<p><i class="fa fa-check"></i> Book drop mode. (Effective checkin date is [% dropboxdate %] ).</p> |
577 |
</div> |
578 |
</div> |
579 |
</div> |
580 |
|
581 |
<div class="circ-settings"> |
564 |
|
582 |
|
565 |
[% IF Koha.Preference('SpecifyReturnDate') %] |
583 |
[% IF Koha.Preference('SpecifyReturnDate') %] |
566 |
<div class="date-select" id="return_date_override_fields"> |
584 |
<div class="date-select" id="return_date_override_fields"> |
567 |
<div class="hint">Specify return date [% INCLUDE 'date-format.inc' %]: </div> |
585 |
<div class="hint">Specify return date [% INCLUDE 'date-format.inc' %]: </div> |
568 |
|
|
|
569 |
<input type="text" size="13" id="return_date_override" name="return_date_override" value="[% return_date_override %]" /> |
586 |
<input type="text" size="13" id="return_date_override" name="return_date_override" value="[% return_date_override %]" /> |
570 |
|
|
|
571 |
<label for="return_date_override_remember"> Remember for next check in:</label> |
587 |
<label for="return_date_override_remember"> Remember for next check in:</label> |
572 |
[% IF ( return_date_override_remember ) %] |
588 |
[% IF ( return_date_override_remember ) %] |
573 |
<input type="checkbox" id="return_date_override_remember" onclick="this.form.barcode.focus();" name="return_date_override_remember" checked="checked" /> |
589 |
<input type="checkbox" id="return_date_override_remember" onclick="this.form.barcode.focus();" name="return_date_override_remember" checked="checked" /> |
574 |
[% ELSE %] |
590 |
[% ELSE %] |
575 |
<input type="checkbox" id="return_date_override_remember" onclick="this.form.barcode.focus();" name="return_date_override_remember" /> |
591 |
<input type="checkbox" id="return_date_override_remember" onclick="this.form.barcode.focus();" name="return_date_override_remember" /> |
576 |
[% END %] |
592 |
[% END %] |
577 |
|
593 |
<button type="button" class="action btn btn-default btn-xs" id="cleardate" name="cleardate" onclick="this.checked = false; this.form.return_date_override.value = ''; this.form.return_date_override_remember.checked = false; this.form.barcode.focus(); return false;">Clear</button> |
578 |
<input type="button" class="action" id="cleardate" value="Clear" name="cleardate" onclick="this.checked = false; this.form.return_date_override.value = ''; this.form.return_date_override_remember.checked = false; this.form.barcode.focus(); return false;" /> |
594 |
</div> |
579 |
</div> |
|
|
580 |
[% END %] |
581 |
[% FOREACH inputloo IN inputloop %] |
582 |
<input type="hidden" name="ri-[% inputloo.counter %]" value="[% inputloo.barcode %]" /> |
583 |
<input type="hidden" name="dd-[% inputloo.counter %]" value="[% inputloo.duedate %]" /> |
584 |
<input type="hidden" name="bn-[% inputloo.counter %]" value="[% inputloo.borrowernumber %]" /> |
585 |
[% END %] |
595 |
[% END %] |
586 |
|
596 |
|
587 |
|
597 |
[% IF ( CAN_user_updatecharges_writeoff && overduecharges ) %] |
588 |
</fieldset> |
598 |
<div id="forgive-overdue-fines" class="circ-setting"> |
589 |
</div> |
599 |
[% IF ( exemptfine ) %] |
590 |
<div class="yui-u"> |
|
|
591 |
<fieldset id="checkin_options"> |
592 |
<legend>Options</legend> |
593 |
[% IF ( CAN_user_updatecharges_writeoff && overduecharges ) %] |
594 |
<p> |
595 |
[% IF ( exemptfine ) %] |
596 |
<input type="checkbox" id="exemptcheck" name="exemptfine" value="exemptfine" checked="checked" /> |
600 |
<input type="checkbox" id="exemptcheck" name="exemptfine" value="exemptfine" checked="checked" /> |
597 |
[% ELSE %] |
601 |
[% ELSE %] |
598 |
<input type="checkbox" id="exemptcheck" name="exemptfine" value="exemptfine" /> |
602 |
<input type="checkbox" id="exemptcheck" name="exemptfine" value="exemptfine" /> |
599 |
[% END %] |
603 |
[% END %] |
600 |
<label for="exemptcheck">Forgive overdue charges</label> |
604 |
<label for="exemptcheck">Forgive overdue charges</label> |
601 |
</p> |
605 |
</div> |
602 |
[% END %] <!-- overduecharges --> |
606 |
[% END %] |
603 |
<p> |
607 |
<!-- overduecharges --> |
604 |
[% IF ( dropboxmode ) %] |
608 |
<div id="book-drop-mode" class="circ-setting"> |
605 |
<input type="checkbox" id="dropboxcheck" name="dropboxmode" value="dropboxmode" checked="checked" /> |
609 |
[% IF ( dropboxmode ) %] |
606 |
[% ELSE %] |
610 |
<input type="checkbox" id="dropboxcheck" name="dropboxmode" value="dropboxmode" checked="checked" /> |
607 |
<input type="checkbox" id="dropboxcheck" name="dropboxmode" value="dropboxmode" /> |
611 |
[% ELSE %] |
608 |
[% END %] |
612 |
<input type="checkbox" id="dropboxcheck" name="dropboxmode" value="dropboxmode" /> |
609 |
<label for="dropboxcheck">Book drop mode</label> |
613 |
[% END %] |
610 |
</p> |
614 |
<label for="dropboxcheck">Book drop mode</label> |
611 |
[% IF Koha.Preference('ExpireReservesMaxPickUpDelayCharge') %] |
615 |
</div> |
612 |
<p> |
616 |
[% IF Koha.Preference('ExpireReservesMaxPickUpDelayCharge') %] |
613 |
[% IF ( forgivemanualholdsexpire ) %] |
617 |
<div id="forgive-manual-hold-fees" class="circ-setting"> |
|
|
618 |
[% IF ( forgivemanualholdsexpire ) %] |
614 |
<input type="checkbox" id="forgivemanualholdsexpire" name="forgivemanualholdsexpire" value="forgivemanualholdsexpire" checked="checked" /> |
619 |
<input type="checkbox" id="forgivemanualholdsexpire" name="forgivemanualholdsexpire" value="forgivemanualholdsexpire" checked="checked" /> |
615 |
[% ELSE %] |
620 |
[% ELSE %] |
616 |
<input type="checkbox" id="forgivemanualholdsexpire" name="forgivemanualholdsexpire" value="forgivemanualholdsexpire" /> |
621 |
<input type="checkbox" id="forgivemanualholdsexpire" name="forgivemanualholdsexpire" value="forgivemanualholdsexpire" /> |
617 |
[% END %] |
622 |
[% END %] |
618 |
<label for="forgivemanualholdsexpire">Forgive fees for manually expired holds</label> |
623 |
<label for="forgivemanualholdsexpire">Forgive fees for manually expired holds</label> |
619 |
</p> |
624 |
</div> |
620 |
[% END %] <!-- overduecharges --> |
625 |
[% END %] |
621 |
</fieldset> |
626 |
<!-- overduecharges --> |
622 |
</div> |
627 |
</div> [%# /.circ-settings %] |
623 |
</form> |
628 |
</fieldset> [%# /#circ_returns_checkin %] |
624 |
</div> |
629 |
</form> [%# /#checkin-form %] |
625 |
|
630 |
|
626 |
[% IF ( riloop ) %] |
631 |
[% IF ( riloop ) %] |
627 |
<h2>Checked-in items</h2> |
632 |
<h2>Checked-in items</h2> |
Lines 692-704
Link Here
|
692 |
[% INCLUDE 'columns_settings.inc' %] |
697 |
[% INCLUDE 'columns_settings.inc' %] |
693 |
[% INCLUDE 'calendar.inc' %] |
698 |
[% INCLUDE 'calendar.inc' %] |
694 |
[% Asset.js("lib/jquery/plugins/jquery-ui-timepicker-addon.min.js") %] |
699 |
[% Asset.js("lib/jquery/plugins/jquery-ui-timepicker-addon.min.js") %] |
|
|
700 |
[% Asset.js("js/pages/circulation.js") %] |
695 |
[% INCLUDE 'timepicker.inc' %] |
701 |
[% INCLUDE 'timepicker.inc' %] |
696 |
|
702 |
|
697 |
<script type="text/javascript"> |
703 |
<script> |
698 |
function Dopop(link) { |
704 |
function Dopop(link) { |
699 |
var newin = window.open(link, 'popup', 'width=600,height=400,resizable=1,toolbar=0,scrollbars=1,top'); |
705 |
var newin = window.open(link, 'popup', 'width=600,height=400,resizable=1,toolbar=0,scrollbars=1,top'); |
700 |
$("#barcode").focus(); |
706 |
$("#barcode").focus(); |
701 |
} |
707 |
} |
|
|
708 |
|
709 |
function check_valid_return_date() { |
710 |
if ( $("#return_date_override").val() ) { |
711 |
var datetime = DateTime_from_syspref( $("#return_date_override").val() ); |
712 |
var now = new Date(); |
713 |
if ( !datetime || datetime > now ) { |
714 |
alert("Invalid return date/time!"); |
715 |
$("#return_date_override").val("") |
716 |
return false; |
717 |
} |
718 |
} |
719 |
return true; |
720 |
} |
721 |
|
702 |
$(document).ready(function () { |
722 |
$(document).ready(function () { |
703 |
$(".modal").modal({ backdrop: 'static' }).on('shown', function() { |
723 |
$(".modal").modal({ backdrop: 'static' }).on('shown', function() { |
704 |
$("#barcode").prop("disabled", true); |
724 |
$("#barcode").prop("disabled", true); |
Lines 743-780
Link Here
|
743 |
} |
763 |
} |
744 |
}); |
764 |
}); |
745 |
|
765 |
|
746 |
function check_valid_return_date() { |
|
|
747 |
if ( $("#return_date_override").val() ) { |
748 |
var datetime = DateTime_from_syspref( $("#return_date_override").val() ); |
749 |
var now = new Date(); |
750 |
if ( !datetime || datetime > now ) { |
751 |
alert("Invalid return date/time!"); |
752 |
$("#return_date_override").val("") |
753 |
return false; |
754 |
} |
755 |
} |
756 |
return true; |
757 |
} |
758 |
|
759 |
$("#exemptcheck").change(function () { |
766 |
$("#exemptcheck").change(function () { |
760 |
if (this.checked == true) { |
767 |
if (this.checked == true) { |
761 |
$("#barcode").addClass("alert"); |
768 |
$("#barcode").addClass("input-warning"); |
762 |
$("#exemptfines").show(); |
769 |
$("#exemptfines").show(); |
763 |
} else { |
770 |
} else { |
764 |
$("#barcode").removeClass("alert"); |
771 |
$("#barcode").removeClass("input-warning"); |
765 |
$("#exemptfines").hide(); |
772 |
$("#exemptfines").hide(); |
766 |
} |
773 |
} |
767 |
$("#barcode").focus(); |
774 |
$("#barcode").focus(); |
768 |
}); |
775 |
}); |
769 |
$("#dropboxcheck").change(function () { |
776 |
$("#dropboxcheck").change(function () { |
770 |
if (this.checked == true) { |
777 |
if (this.checked == true) { |
771 |
$("#barcode").addClass("alert"); |
778 |
$("#barcode").addClass("input-warning"); |
772 |
$("#dropboxmode").show(); |
779 |
$("#dropboxmode").show(); |
773 |
|
780 |
|
774 |
$("#return_date_override_fields :input").prop('disabled', true); |
781 |
$("#return_date_override_fields :input").prop('disabled', true); |
775 |
$("#return_date_override").datetimepicker("disable"); |
782 |
$("#return_date_override").datetimepicker("disable"); |
776 |
} else { |
783 |
} else { |
777 |
$("#barcode").removeClass("alert"); |
784 |
$("#barcode").removeClass("input-warning"); |
778 |
$("#dropboxmode").hide(); |
785 |
$("#dropboxmode").hide(); |
779 |
|
786 |
|
780 |
$("#return_date_override_fields :input").prop('disabled', false); |
787 |
$("#return_date_override_fields :input").prop('disabled', false); |
Lines 784-793
Link Here
|
784 |
}); |
791 |
}); |
785 |
$("#forgivemanualholdsexpire").change(function () { |
792 |
$("#forgivemanualholdsexpire").change(function () { |
786 |
if (this.checked == true) { |
793 |
if (this.checked == true) { |
787 |
$("#barcode").addClass("alert"); |
794 |
$("#barcode").addClass("input-warning"); |
788 |
$("#forgivemanualholdsexpire-alert").show(); |
795 |
$("#forgivemanualholdsexpire-alert").show(); |
789 |
} else { |
796 |
} else { |
790 |
$("#barcode").removeClass("alert"); |
797 |
$("#barcode").removeClass("input-warning"); |
791 |
$("#forgivemanualholdsexpire-alert").hide(); |
798 |
$("#forgivemanualholdsexpire-alert").hide(); |
792 |
} |
799 |
} |
793 |
$("#barcode").focus(); |
800 |
$("#barcode").focus(); |
Lines 796-808
Link Here
|
796 |
[% IF(overduecharges) %] |
803 |
[% IF(overduecharges) %] |
797 |
$("#barcode").focus(function () { |
804 |
$("#barcode").focus(function () { |
798 |
if (($("#exemptcheck").prop("checked") == true) || ($("#dropboxcheck").prop("checked") == true)) { |
805 |
if (($("#exemptcheck").prop("checked") == true) || ($("#dropboxcheck").prop("checked") == true)) { |
799 |
$("#barcode").addClass("alert"); |
806 |
$("#barcode").addClass("input-warning"); |
800 |
} else { |
807 |
} else { |
801 |
$("#barcode").removeClass("alert"); |
808 |
$("#barcode").removeClass("input-warning"); |
802 |
} |
809 |
} |
803 |
}); |
810 |
}); |
804 |
$("#barcode").blur(function () { |
811 |
$("#barcode").blur(function () { |
805 |
$("#barcode").removeClass("alert"); |
812 |
$("#barcode").removeClass("input-warning"); |
806 |
}); |
813 |
}); |
807 |
[% END %] |
814 |
[% END %] |
808 |
|
815 |
|