[% USE KohaDates %]
[% USE Branches %]
+[% USE Koha %]
+[% USE Borrowers %]
+[% USE AuthorisedValues %]
[% INCLUDE 'doc-head-open.inc' %]
<title>Koha › Circulation › Check in [% title |html %]</title>
[% INCLUDE 'doc-head-close.inc' %]
+
+[% INCLUDE 'calendar.inc' %]
+<script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery-ui-timepicker-addon.min.js"></script>
+
<script type="text/javascript">
//<![CDATA[
function Dopop(link) {
$("#barcode").focus();
}
$(document).ready(function () {
+ $("#return_date_override").datetimepicker({
+ onClose: function(dateText, inst) { $("#barcode").focus(); },
+ defaultDate: -1,
+ hour: 23,
+ minute: 59,
+ maxDate: 0
+ });
+ $("#return_date_override").on("blur", function() {
+ check_valid_return_date();
+ });
+ $("#checkin-form").submit(function( event ) {
+ if ( !check_valid_return_date() ) {
+ event.preventDefault();
+ }
+ });
+
+ function check_valid_return_date() {
+ if ( $("#return_date_override").val() ) {
+ var datetime = DateTime_from_syspref( $("#return_date_override").val() );
+ var now = new Date();
+ if ( !datetime || datetime > now ) {
+ alert("Invalid return date/time!");
+ $("#return_date_override").val("")
+ return false;
+ }
+ }
+ return true;
+ }
+
$("#exemptcheck").change(function () {
if (this.checked == true) {
$("#barcode").addClass("alert");
if (this.checked == true) {
$("#barcode").addClass("alert");
$("#dropboxmode").show();
+
+ $("#return_date_override_fields :input").attr("disabled", true);
+ $("#return_date_override").datetimepicker("disable");
} else {
$("#barcode").removeClass("alert");
$("#dropboxmode").hide();
+
+ $("#return_date_override_fields :input").attr("disabled", false);
+ $("#return_date_override").datetimepicker("enable");
}
$("#barcode").focus();
});
</div>
[% END %]
+<!-- Patron is restricted and checkin was backdated -->
+[% IF return_date_was_overriden && Borrowers.IsDebarred( borrower ) %]
+ <div id="restricted_backdated" class="dialog message">
+ <h3>
+ <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrower.borrowernumber %]">
+ [% borrower.firstname %] [% borrower.surname %]
+ </a>
+ is restricted. Please verify this patron should still be restricted.
+ </h3>
+ </div>
+[% END %]
[% IF ( wrongbranch ) %]
<div class="dialog alert"><h3>Cannot check in</h3><p>This item must be checked in at its home library. <strong>NOT CHECKED IN</strong></p>
<div class="dialog alert">
<h3>Check in message</h3>
[% FOREACH errmsgloo IN errmsgloop %]
+ [% IF ( errmsgloo.NotForLoanStatusUpdated ) %]
+ <p class="problem">
+ Not for loan status updated
+ from
+ [% IF errmsgloo.NotForLoanStatusUpdated.from %]
+ [% AuthorisedValues.GetByCode( 'NOT_LOAN', errmsgloo.NotForLoanStatusUpdated.from ) %]
+ [% ELSE %]
+ being available for loan
+ [% END %]
+ to
+ [% IF errmsgloo.NotForLoanStatusUpdated.to %]
+ [% AuthorisedValues.GetByCode( 'NOT_LOAN', errmsgloo.NotForLoanStatusUpdated.to ) %]
+ [% ELSE %]
+ being available for loan
+ [% END %]
+ </p>
+ [% END %]
[% IF ( errmsgloo.badbarcode ) %]
<p class="problem">No item with barcode: [% errmsgloo.msg %]</p>
[% END %]
[% IF ( errmsgloo.debarred ) %]
<p class="problem"><a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=[% errmsgloo.debarborrowernumber %]">[% errmsgloo.debarname %]([% errmsgloo.debarcardnumber %])</a> is now debarred until [% errmsgloo.debarred | $KohaDates %] </p>
[% END %]
+ [% IF ( errmsgloo.prevdebarred ) %]
+ <p class="problem"><b>Reminder: </b>Patron was earlier restricted until [% errmsgloo.prevdebarred | $KohaDates %]</p>
+ [% END %]
[% END %]
[% IF ( soundon ) %]
<audio src="[% interface %]/[% theme %]/sound/critical.ogg" autoplay="autoplay" autobuffer="autobuffer"></audio>
</div>
</div>
<div class="yui-g">
- <form method="post" action="/cgi-bin/koha/circ/returns.pl" autocomplete="off" >
+ <form id="checkin-form" method="post" action="/cgi-bin/koha/circ/returns.pl" autocomplete="off" >
<div class="yui-u first">
<fieldset>
<legend>Check in</legend>
<input name="barcode" id="barcode" size="14" class="focus"/>
[% END %]
<input type="submit" class="submit" value="Submit" />
+
+ [% IF Koha.Preference('SpecifyReturnDate') %]
+ <div class="date-select" id="return_date_override_fields">
+ <div class="hint">Specify return date [% INCLUDE 'date-format.inc' %]: </div>
+
+ <input type="text" size="13" id="return_date_override" name="return_date_override" value="[% return_date_override %]" />
+
+ <label for="return_date_override_remember"> Remember for next check in:</label>
+ [% IF ( return_date_override_remember ) %]
+ <input type="checkbox" id="return_date_override_remember" onclick="this.form.barcode.focus();" name="return_date_override_remember" checked="checked" />
+ [% ELSE %]
+ <input type="checkbox" id="return_date_override_remember" onclick="this.form.barcode.focus();" name="return_date_override_remember" />
+ [% END %]
+
+ <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;" />
+ </div>
+ [% END %]
[% FOREACH inputloo IN inputloop %]
<input type="hidden" name="ri-[% inputloo.counter %]" value="[% inputloo.barcode %]" />
<input type="hidden" name="dd-[% inputloo.counter %]" value="[% inputloo.duedate %]" />
<div class="yui-u">
<fieldset id="checkin_options">
<legend>Options</legend>
- [% IF ( overduecharges ) %]
+ [% IF ( CAN_user_updatecharges_writeoff && overduecharges ) %]
<p>
[% IF ( exemptfine ) %]
<input type="checkbox" id="exemptcheck" name="exemptfine" value="exemptfine" checked="checked" />