Bug 14470: Do not allow renew for on-site checkouts
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / circ / circulation.tt
1 [% USE Koha %]
2 [% USE Branches %]
3 [% USE KohaDates %]
4 [% USE ColumnsSettings %]
5 [% USE ItemTypes %]
6 [% IF Koha.Preference('ExportRemoveFields') OR Koha.Preference('ExportWithCsvProfile') %]
7    [% SET exports_enabled = 1 %]
8 [% END %]
9 [% USE AuthorisedValues %]
10 [% INCLUDE 'doc-head-open.inc' %]
11 [% SET destination = "circ" %]
12 <title>Koha &rsaquo; Circulation
13 [% IF borrowernumber %]
14   &rsaquo; Checking out to [% INCLUDE 'patron-title.inc' invert_name = 1 %]
15 [% END %]
16 </title>
17 [% INCLUDE 'doc-head-close.inc' %]
18 [% INCLUDE 'calendar.inc' %]
19
20 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
21 [% INCLUDE 'strings.inc' %]
22 [% INCLUDE 'datatables.inc' %]
23 [% INCLUDE 'columns_settings.inc' %]
24 <script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
25 <script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery-ui-timepicker-addon.min.js"></script>
26 [% INCLUDE 'timepicker.inc' %]
27 <script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.dataTables.rowGrouping.js"></script>
28 <script type="text/javascript" src="[% themelang %]/js/pages/circulation.js"></script>
29 <script type="text/javascript" src="[% themelang %]/js/checkouts.js"></script>
30 <script type="text/javascript" src="[% themelang %]/js/holds.js"></script>
31 <script type="text/javascript">
32 //<![CDATA[
33 /* Set some variable needed in circulation.js */
34 var MSG_DT_LOADING_RECORDS = _("Loading... you may continue scanning.");
35 var interface = "[% interface %]";
36 var theme = "[% theme %]";
37 var borrowernumber = "[% borrowernumber %]";
38 var branchcode = "[% branch %]";
39 var exports_enabled = "[% exports_enabled %]";
40 var AllowRenewalLimitOverride = [% (CAN_user_circulate_override_renewals && AllowRenewalLimitOverride)? 1: 0 %];
41 var script = "circulation";
42 var relatives_borrowernumbers = new Array();
43 [% FOREACH b IN relatives_borrowernumbers %]
44     relatives_borrowernumbers.push("[% b %]");
45 [% END %]
46
47 var MSG_ADD_MESSAGE = _("Add a new message");
48 var MSG_EXPORT_SELECT_CHECKOUTS = _("You must select checkout(s) to export");
49
50 columns_settings = [% ColumnsSettings.GetColumns( 'circ', 'circulation', 'issues-table', 'json' ) %]
51
52 [% IF ( borrowernumber ) %]
53     if($.cookie("holdfor") != [% borrowernumber %]){
54         $.removeCookie("holdfor", { path: '/' });
55     }
56 [% ELSE %]
57     $.removeCookie("holdfor", { path: '/' });
58 [% END %]
59
60 [% UNLESS ( borrowernumber ) %][% UNLESS ( borrowers ) %]window.onload=function(){ $('#findborrower').focus(); };[% END %][% END %]
61
62 // On-site checkout
63 function toggle_onsite_checkout(){
64     if ( $("#onsite_checkout").attr('checked') ) {
65         $("#duedatespec").val("[% todaysdate | $KohaDates with_hours => 1%]")
66         [% IF !Koha.Preference('SpecifyDueDate') %]
67             $("#duedatespec").datetimepicker('destroy');
68         [% END %]
69     } else {
70         $("#duedatespec").datetimepicker({
71             onClose: function(dateText, inst) { $("#barcode").focus(); },
72             hour: 23,
73             minute: 59
74         });
75     }
76 }
77
78 function Dopop(link) {
79     var newin = window.open(link, 'popup', 'width=600,height=400,resizable=1,toolbar=0,scrollbars=1,top');
80 }
81 $(document).ready(function() {
82     $('#mainform').on('submit',function() {
83         if ($("#barcode") && $("#barcode").val()) {
84             $('#barcode').on('keypress',function(event) {
85                 $('#barcodeSubmittedModal').modal();
86                 event.preventDefault(); }
87             );
88         }
89     });
90
91     [% IF !( CircAutoPrintQuickSlip == 'clear' ) %]
92         // listen submit to trigger qslip on empty checkout
93         $('#mainform').bind('submit',function() {
94             if ($('#barcode').val() == '') {
95                 return printx_window( '[% CircAutoPrintQuickSlip %]' );
96             }
97         });
98     [% END %]
99     toggle_onsite_checkout();
100     $("#onsite_checkout").click(function(){
101         toggle_onsite_checkout();
102     });
103
104     var table = $("#table_borrowers").dataTable($.extend(true, {}, dataTablesDefaults, {
105         "aoColumnDefs": [
106             { "aTargets": [ 0 ], "bSortable": false, "bSearchable": false },
107         ],
108         "aaSorting": [ 2, "asc" ],
109         "sDom": "t",
110         "iDisplayLength": -1
111     }));
112     $(table).find('tbody tr').filter(':has(:radio:checked)').end().click(function(event) {
113         $('#table_borrowers tbody tr').removeClass('selected');
114         $(this).addClass('selected');
115         if (event.target.type !== 'radio') {
116             $(':radio', this).attr('checked', 'true')
117         }
118     });
119
120 });
121
122 //]]>
123 </script>
124 </head>
125 <body id="circ_circulation" class="circ">
126
127 [% INCLUDE 'header.inc' %]
128 [% INCLUDE 'circ-search.inc' %]
129
130 <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/circ/circulation-home.pl">Circulation</a> &rsaquo;
131 [% IF ( borrowernumber ) %]
132     <a href="/cgi-bin/koha/circ/circulation.pl">Checkouts</a> &rsaquo; [% INCLUDE 'patron-title.inc' %]
133 [% ELSE %]
134     <strong>Checkouts</strong>
135 [% END %]
136 </div>
137 [% IF ( $borrowers ) %]
138 <div id="doc" class="yui-t7">
139
140    <div id="bd">
141         <div id="yui-main">
142         <div class="yui-g">
143 [% ELSE %]
144 <div id="doc3" class="yui-t2">
145
146    <div id="bd">
147         <div id="yui-main">
148         <div class="yui-b">
149 [% END %]
150
151 [% IF ( borrowernumber ) %]
152 [% INCLUDE 'members-toolbar.inc' %]
153 [% END %]
154
155 <!--  INITIAL BLOC : PARAMETERS & BORROWER INFO -->
156 <div style="display: none;" id="add_message_form">
157 <form method="post" action="/cgi-bin/koha/circ/add_message.pl" id="message_form" name="message_f">
158 <fieldset id="borrower_messages" class="brief">
159 <legend>Leave a message</legend>
160         <ol>
161     <li>
162             <label for="message_type">Add a message for:</label>
163           <select name="message_type" id="message_type">
164             <option value="L">Other librarians</option>
165             <option value="B">[% firstname %]</option>
166         </select>
167     </li>
168     [% IF ( canned_bor_notes_loop ) %]
169         <li>
170                 <label for="type">Predefined notes: </label>
171                 <select name="type" id="type" onchange="this.form.borrower_message.value=this.options[this.selectedIndex].value;">
172                     <option value="">Select note</option>
173                     [% FOREACH canned_bor_notes_loo IN canned_bor_notes_loop %]
174                     <option value="[% canned_bor_notes_loo.lib %]">[% canned_bor_notes_loo.lib %]</option>
175                     [% END %]
176                 </select>
177         </li>
178     [% END %]
179     <li>
180         <textarea rows="3" cols="60" name="borrower_message" id="borrower_message" ></textarea>
181     </li>
182         </ol>
183     <fieldset class="action">
184         <input type="submit" value="Save" /> <a href="#" class="cancel">Cancel</a>
185     </fieldset>
186
187         <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
188         <input type="hidden" name="branchcode" value="[% branch %]" />
189 </fieldset>
190 </form>
191 </div>
192
193 [% IF ( was_renewed ) %]<div class="dialog message">Patron's account has been renewed until [% expiry %]</div>[% END %]
194
195 [% IF additional_materials %]
196     <div id="materials" class="dialog message">Note about the accompanying materials: <br />
197     [% additional_materials %]
198     </div>
199 [% END %]
200
201 [% IF ( alert.ITEM_LOST ) %]
202     <div class="dialog message">This item has been lost with a status of "[% alert.ITEM_LOST %]".</div>
203 [% END %]
204
205 [% IF ( alert.OTHER_CHARGES ) %]
206     <div class="dialog message">The patron has unpaid charges for reserves, rentals etc of [% alert.OTHER_CHARGES %]</div>
207 [% END %]
208
209 [% IF ( NEEDSCONFIRMATION ) %]
210 <div class="yui-g">
211
212 <div id="circ_needsconfirmation" class="dialog alert">
213 [% IF CAN_user_circulate_force_checkout %]
214   <h3>Please confirm checkout</h3>
215 [% ELSE %]
216   <h3>Cannot check out</h3>
217 [% END %]
218
219 <ul>
220 [%IF ( AGE_RESTRICTION ) %]
221     <li>Age restriction [% AGE_RESTRICTION %].
222       [% IF CAN_user_circulate_force_checkout %]
223         Check out anyway?
224       [% END %]
225     </li>
226 [% END %]
227
228 [% IF ( DEBT ) %]
229     <li>The patron has a debt of [% DEBT %].</li>
230 [% END %]
231 [% IF ( RENTALCHARGE && RENTALCHARGE > 0 ) %]
232     <li>Rental charge for this item: [% RENTALCHARGE %]</li>
233 [% END %]
234
235 [% IF ( RENEW_ISSUE ) %]
236     <li>Item <i>[% getTitleMessageIteminfo %]</i> ([% getBarcodeMessageIteminfo %]) is currently checked out to this patron.  Renew?</li>
237 [% END %]
238
239 [% IF ( RESERVE_WAITING ) %]
240     <li>Item <i>[% getTitleMessageIteminfo %]</i> ([% getBarcodeMessageIteminfo %]) has been waiting for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% resborrowernumber %]">[% resfirstname %] [% ressurname %]</a> ([% rescardnumber %]) at [% resbranchname %] since [% reswaitingdate %]</li>
241 [% END %]
242
243 [% IF ( RESERVED ) %]
244     <li>Item <i>[% getTitleMessageIteminfo %]</i> ([% getBarcodeMessageIteminfo %]) has been on hold for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% resborrowernumber %]">[% resfirstname %] [% ressurname %]</a> ([% rescardnumber %]) at [% resbranchname %] since [% resreservedate %]</li>
245 [% END %]
246
247 [% IF ( ISSUED_TO_ANOTHER ) %]
248     <li>Item <i>[% getTitleMessageIteminfo %]</i> ([% getBarcodeMessageIteminfo %]) is checked out to <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% issued_borrowernumber %]">[% issued_firstname %] [% issued_surname %]</a> ([% issued_cardnumber %]).
249       [% IF CAN_user_circulate_force_checkout %]
250         Check in and check out?
251       [% END %]
252     </li>
253 [% END %]
254
255 [% IF ( TOO_MANY ) %]
256     <li>Too many checked out. [% current_loan_count %] checked out, only [% max_loans_allowed %] are allowed.</li>
257 [% END %]
258
259 [% IF ( BORRNOTSAMEBRANCH ) %]
260     <li>This patrons is from a different library ([% BORRNOTSAMEBRANCH %])</li>
261 [% END %]
262
263 [% IF ( PATRON_CANT ) %]
264     <li>This patron can't check out this item per library circulation policy</li>
265 [% END %]
266
267 [% IF ( NOT_FOR_LOAN_FORCING ) %]
268     <li>
269     [% IF ( itemtype_notforloan ) %]
270         Item type is normally not for loan.
271     [% ELSIF ( item_notforloan ) %]
272         [% item_notforloan_lib = AuthorisedValues.GetByCode( authvalcode_notforloan, item_notforloan, 0 ) %]
273         Item is normally not for loan [% IF (item_notforloan_lib) %]([% item_notforloan_lib %])[% END %].
274     [% END %]
275       [% IF CAN_user_circulate_force_checkout %]
276         Check out anyway?
277       [% END %]
278     </li>
279 [% END %]
280
281 [% IF ( USERBLOCKEDOVERDUE ) %]
282     <li>Patron has [% USERBLOCKEDOVERDUE %] overdue item(s).
283       [% IF CAN_user_circulate_force_checkout %]
284        Check out anyway?
285       [% END %]
286     </li>
287 [% END %]
288
289 [% IF ( ITEM_LOST ) %]
290     <li>This item has been lost with a status of "[% ITEM_LOST %]".
291       [% IF CAN_user_circulate_force_checkout %]
292         Check out anyway?
293       [% END %]
294     </li>
295 [% END %]
296
297 [% IF  HIGHHOLDS %]
298     <li>High demand item. Loan period shortened to [% HIGHHOLDS.duration %] days (due [% HIGHHOLDS.returndate %]). Check out anyway?</li>
299 [% END %]
300
301 [% IF BIBLIO_ALREADY_ISSUED %]
302   <li>
303     Patron has already checked out another item from this record.
304     [% IF CAN_user_circulate_force_checkout %]
305       Check out anyway?
306     [% END %]
307   </li>
308 [% END %]
309 </ul>
310
311 [% IF HIGHHOLDS %]
312         <script language="JavaScript" type="text/javascript">
313         $(document).ready(function() {
314                 $("input[name=duedatespec]:hidden").val('[% HIGHHOLDS.returndate %]');
315         });
316         </script>
317 [% END %]
318
319 [% IF CAN_user_circulate_force_checkout or HIGHHOLDS %]
320 <form method="post" action="/cgi-bin/koha/circ/circulation.pl" autocomplete="off">
321
322 [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
323
324 [% IF ( RESERVED ) %]
325     <p>
326     <input type="checkbox" id="cancelreserve" name="cancelreserve" value="cancel" />
327     <label for="cancelreserve">Cancel hold</label>
328     </p>
329 [% END %]
330
331 [% IF ( RESERVE_WAITING ) %]
332 <p>
333     <label for="cancelreserve">Cancel hold</label>
334     <input type="radio" value="cancel" name="cancelreserve" id="cancelreserve" /><br />
335     <label for="revertreserve">Revert waiting status</label>
336     <input type="radio" value="revert" name="cancelreserve" id="revertreserve" checked="checked"/>
337 </p>
338 [% END %]
339
340     <input type="hidden" name="barcode" value="[% barcode |html %]" />
341     <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
342     <input type="hidden" name="issueconfirmed" value="1" />
343     [% IF ( DEBT ) %]<input type="hidden" name="debt_confirmed" value="1" />[% END %]
344     [% IF ( INVALID_DATE ) %]
345     <p>
346     <input type="text" size="13" id="duedatespec" name="duedatespec" readonly="readonly" value="[% duedatespec %]" />
347     <label for="duedatespec">Due date</label>
348     </p>
349     [% ELSE %]
350     <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
351     [% END %]
352     <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
353     <input type="hidden" name="branch" value="[% branch %]" />
354     [% IF ( RENEW_ISSUE ) %]
355     <input type="submit" class="approve" value="Yes, renew (Y)" accesskey="y" />
356     [% ELSE %]
357     <input type="submit" class="approve" value="Yes, check out (Y)" accesskey="y" />
358     [% END %]
359     <input type="hidden" name="onsite_checkout" value="[% onsite_checkout %]" />
360 </form>
361 [% END %]
362
363 [% IF ( RESERVED ) %]
364 <form method="get" action="/cgi-bin/koha/circ/circulation.pl">
365     <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
366     <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
367     <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
368     <input class="print" type="submit" onclick="Dopop('hold-transfer-slip.pl?borrowernumber=[% reserveborrowernumber %]&amp;biblionumber=[% itembiblionumber %]&amp;op=slip');this.form.submit();" value="Don't check out and print slip (P)">
369 </form>
370 [% END %]
371
372 [% IF ( RESERVE_WAITING ) %]
373 <form method="get" action="/cgi-bin/koha/circ/circulation.pl">
374     <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
375     <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
376     <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
377     <input class="print" type="submit" onclick="Dopop('hold-transfer-slip.pl?borrowernumber=[% reserveborrowernumber %]&amp;biblionumber=[% itembiblionumber %]&amp;op=slip');this.form.submit();" value="Don't check out and print slip (P)">
378 </form>
379 [% END %]
380
381 <form method="get" action="/cgi-bin/koha/circ/circulation.pl">
382     [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
383     <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
384     <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
385     <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
386     [% IF CAN_user_circulate_force_checkout or HIGHHOLDS %]
387         [% IF ( RENEW_ISSUE ) %]
388         <input type="submit" class="deny" value="No, don't renew (N)" accesskey="n" />
389         [% ELSE %]
390         <input type="submit" class="deny" value="No, don't check out (N)" accesskey="n" />
391         [% END %]
392     [% ELSE %]
393         <input type="submit" class="deny" value="Continue" />
394     [% END %]
395 </form>
396
397 </div></div>
398 [% END %] <!-- NEEDSCONFIRMATION -->
399
400         [% IF ( IMPOSSIBLE ) %]
401
402 [% IF ( soundon ) %]
403 <audio src="[% interface %]/[% theme %]/sound/critical.ogg" autoplay="autoplay" autobuffer="autobuffer"></audio>
404 [% END %]        
405
406 <div class="yui-g">
407 <div id="circ_impossible" class="dialog alert">
408 <!-- RESULT OF ISSUING REQUEST -->
409         <ul>
410         [% IF ( STATS ) %]
411             <li>Local use recorded</li>
412         [% END %]
413
414         [% IF ( INVALID_DATE ) %]
415             <li>The due date &quot;[% INVALID_DATE %]&quot; is invalid</li>
416         [% END %]
417
418         [% IF ( UNKNOWN_BARCODE ) %]
419             <li>The barcode was not found [% barcode |html %]
420             [% IF ( fast_cataloging ) %]
421                 [% IF ( CAN_user_editcatalogue_fast_cataloging ) %]
422             <a href="/cgi-bin/koha/cataloguing/addbiblio.pl?frameworkcode=FA&amp;barcode=[% barcode |uri %]&amp;circborrowernumber=[% borrowernumber %]&amp;branch=[% branch %]&amp;duedatespec=[% duedatespec %]&amp;stickyduedate=[% stickyduedate %]">Fast cataloging</a>
423                 [% END %]
424             [% END %]
425
426         [% IF ( FALLBACK ) %]
427             [% IF options %]
428                 <br />The following items were found by searching:
429                 [% FOREACH book IN options %]
430                     <br />
431                     <form method="post" action="/cgi-bin/koha/circ/circulation.pl" autocomplete="off">
432                     [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
433                         <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
434                         <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
435                         <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
436                         <input type="hidden" name="branch" value="[% branch %]" />
437                         <input type="hidden" name="barcode" value="[% book.barcode %]" />
438                         <input type="submit" name="x" value="Check out [% book.barcode %]: [% book.title %]" />
439                     </form>
440                 [% END %]
441             [% ELSE %]
442                 <br />No items were found by searching.
443             [% END %]
444         [% END %]
445
446      </li>
447         [% END %]
448
449         [% IF ( NOT_FOR_LOAN ) %]
450             <li>
451             [% IF ( itemtype_notforloan ) %]
452                 Item type not for loan.
453             [% ELSIF ( item_notforloan ) %]
454                 [% item_notforloan_lib = AuthorisedValues.GetByCode( authvalcode_notforloan, item_notforloan, 0 ) %]
455                 Item not for loan [% IF (item_notforloan_lib) %]([% item_notforloan_lib %])[% END %].
456             [% END %]
457             </li>
458         [% END %]
459
460         [% IF ( WTHDRAWN ) %]
461             <li>Item has been withdrawn</li>
462         [% END %]
463
464         [% IF ( RESTRICTED ) %]
465             <li>Item is restricted</li>
466         [% END %]
467
468         [% IF ( GNA ) %]
469             <li>Patron's address is in doubt</li>
470         [% END %]
471
472         [% IF ( CARD_LOST ) %]
473             <li>Patron's card is lost</li>
474         [% END %]
475
476         [% IF ( DEBARRED ) %]
477             <li>Patron is restricted</li>
478         [% END %]
479
480         [% IF ( NO_MORE_RENEWALS ) %]
481             <li>No more renewals possible</li>
482         [% END %]
483
484         [% IF NO_RENEWAL_FOR_ONSITE_CHECKOUTS %]
485             <li>This item can not be renewed, it's an on-site checkout</li>
486         [% END %]
487
488         [%IF ( AGE_RESTRICTION ) %]
489             <li>Age restriction [% AGE_RESTRICTION %].</li>
490         [% END %]
491
492         [% IF ( EXPIRED ) %]
493             <li>Patron's card is expired</li>
494         [% END %]
495
496         [% IF ( TOO_MANY ) %]
497             <li>Too many checked out. [% current_loan_count %] checked out, only [% max_loans_allowed %] are allowed.</li>
498         [% END %]
499
500         [% IF ( ITEMNOTSAMEBRANCH ) %]
501             <li>This item belongs to [% Branches.GetName( itemhomebranch ) %] and cannot be checked out from this location.</li>
502         [% END %]
503
504         [% IF ( USERBLOCKEDWITHENDDATE ) %]
505             <li>Patron has a restriction until [% USERBLOCKEDWITHENDDATE | $KohaDates %].</li>
506         [% END %]
507
508         [% IF ( USERBLOCKEDNOENDDATE ) %]
509             <li>Patron has an indefinite restriction.</li>
510         [% END %]
511
512         [% IF ( USERBLOCKEDOVERDUE ) %]
513             <li>Checkouts are BLOCKED because patron has overdue items.</li>
514         [% END %]
515         </ul>
516
517         [% IF (forceallow) %]
518             <li>Restriction overridden temporarily.</li>
519         [% END %]
520
521 </div></div>
522 [% ELSE %]
523 [% IF ( soundon ) %]
524 <audio src="[% interface %]/[% theme %]/sound/beep.ogg" autoplay="autoplay" autobuffer="autobuffer"></audio>
525 [% END %]
526
527   [% IF (forceallow) %]
528       <div id="overridden_debarment" class="dialog alert">Restriction overridden temporarily</div>
529   [% END %]
530
531     [% END %] <!-- /impossible -->
532
533 [% IF ( issued ) %]
534 <p>Item checked out</p>
535 [% END %]
536
537 [% IF ( message ) %]
538 [% INCLUDE 'patron-toolbar.inc' %]
539 <h4>
540 No patron matched <span class="ex">[% message %]</span>
541 </h4>
542 [% END %]
543
544
545 [% IF ( borrowers ) %]
546 [% INCLUDE 'patron-toolbar.inc' %]
547
548 <form method="post" action="/cgi-bin/koha/circ/circulation.pl" id="mainform" name="mainform" autocomplete="off">
549 <fieldset id="circ_circulation_selectborrower" class="brief">
550     <legend>Patron selection</legend>
551
552 [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
553     <input type="hidden" name="branch" value="[% branch %]" />
554     <input type="hidden" name="printer" value="[% printer %]" />
555     <input type="hidden" name="duedatespec" value="[% duedatespec %]" />
556     <input type="hidden" name="stickyduedate" value="[% stickyduedate %]" />
557
558     <table id="table_borrowers">
559         <thead>
560             <tr>
561                 <th></th>
562                 <th>Name</th>
563                 <th>Cardnumber</th>
564                 <th>Category</th>
565                 <th>Library</th>
566                 <th>Address</th>
567             </tr>
568         </thead>
569         <tbody>
570             [% FOREACH borrower IN borrowers %]
571             <tr>
572                 <td><input type="radio" name="borrowernumber" value="[% borrower.borrowernumber %]" /></td>
573                 <td>[% borrower.surname %], [% borrower.firstname %]</td>
574                 <td>[% borrower.cardnumber %]</td>
575                 <td>[% borrower.categorycode %]</td>
576                 <td>[% borrower.branchcode %]</td>
577                 <td>[% borrower.address %]</td>
578             </tr>
579             [% END %]
580         </tbody>
581     </table>
582     <fieldset class="action"><input type="submit" value="Select" /></fieldset>
583 </fieldset>
584 </form>
585 [% ELSE %]
586
587 <!-- BARCODE ENTRY -->
588
589 [% IF ( borrowernumber ) %]
590 <div class="yui-g">
591 [% IF ( !noissues ) || ( Koha.Preference('OnSiteCheckouts') && Koha.Preference('OnSiteCheckoutsForce') )%]
592 [% IF ( flagged ) %]
593 <div class="yui-u first">
594 [% ELSE %]
595 <div>
596
597 [% END %]
598
599
600 <form method="post" action="/cgi-bin/koha/circ/circulation.pl" id="mainform" name="mainform" autocomplete="off">
601 [% IF ( issue ) %]
602     <fieldset id="circ_circulation_issue" class="lastchecked">
603 [% ELSE %]
604     <fieldset id="circ_circulation_issue">
605 [% END %]
606     [% IF ( DisplayClearScreenButton ) %]
607         <span id="clearscreen"><a href="/cgi-bin/koha/circ/circulation.pl" title="Clear screen">x</a></span>
608     [% END %]
609
610     [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
611
612     <label for="barcode">Checking out to [% INCLUDE 'patron-title.inc' %]</label>
613
614         <div class="hint">Enter item barcode:</div>
615
616     [% IF NEEDSCONFIRMATION %]
617         <input type="text" name="barcode" id="barcode" class="barcode focus" size="14" disabled="disabled" />
618     [% ELSE %]
619         <input type="text" name="barcode" id="barcode" class="barcode focus" size="14" />
620     [% END %]
621     <button type="submit" class="btn">Check out</button>
622
623     <div class="date-select">
624         [% IF NEEDSCONFIRMATION %]
625             <input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" disabled="disabled" />
626         [% ELSE %]
627             <input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" />
628         [% END %]
629         <label for="auto_renew">Automatic renewal</label>
630     </div>
631
632     [% UNLESS ( noissues && Koha.Preference('OnSiteCheckoutsForce') ) %]
633         [% IF ( SpecifyDueDate ) %]
634             <div class="date-select">
635                 <div class="hint">Specify due date [% INCLUDE 'date-format.inc' %]: </div>
636                 [% IF ( duedatespec ) %]
637                     <input type="text" size="13" id="duedatespec" name="duedatespec" value="[% duedatespec %]" readonly="readonly" />
638                 [% ELSE %]
639                     <input type="text" size="13" id="duedatespec" name="duedatespec" value="" readonly="readonly" />
640                 [% END %]
641                 <label for="stickyduedate"> Remember for session:</label>
642                 [% IF ( stickyduedate ) %]
643                     <input type="checkbox" id="stickyduedate" onclick="this.form.barcode.focus();" name="stickyduedate" checked="checked" />
644                 [% ELSE %]
645                     <input type="checkbox" id="stickyduedate" onclick="this.form.barcode.focus();" name="stickyduedate" />
646                 [% END %]
647                 <button class="btn btn-small action" id="cleardate" name="cleardate" onclick="this.checked = false; this.form.duedatespec.value = ''; this.form.stickyduedate.checked = false; this.form.barcode.focus(); return false;" >Clear</button>
648             </div>
649         [% END %]
650     [% END %]
651
652     [% IF Koha.Preference('OnSiteCheckouts') %]
653         <div class="onsite_checkout-select">
654             [% IF noissues %]
655                 <div class="onsite-checkout-only">
656                     <input type="checkbox" id="onsite_checkout" name="onsite_checkout_forced" checked="checked" disabled="disabled" /> <label for="onsite_checkout">On-site checkouts only. Automatic due date: </label>
657                     <input type="text" name="duedatespec" id="duedatespec" readonly="readonly" />
658                     <input type="hidden" name="onsite_checkout" checked="checked" value="1" />
659                 </div>
660             [% ELSE %]
661                 <input type="checkbox" id="onsite_checkout" name="onsite_checkout" /> <label for="onsite_checkout">On-site checkout</label>
662             [% END %]
663         </div>
664     [% END %]
665
666           <input type="hidden" name="borrowernumber" id="borrowernumber" value="[% borrowernumber %]" />
667           <input type="hidden" name="branch" value="[% branch %]" />
668           <input type="hidden" name="printer" value="[% printer %]" />
669           <input type="hidden" name="print" value="maybe" />
670           <input type="hidden" name="debt_confirmed" value="[% debt_confirmed %]" />
671                 [% IF ( CHARGES ) %]
672                         <input type="hidden" name="charges" value="yes" />
673                         <input type="hidden" name="oldamount" value="[% amountold %]" />
674                 [% END %]
675 </fieldset>
676 [% IF ( issue ) %]
677     <div class="lastchecked">
678         <p><strong>Checked out: </strong>[% issue.item.biblioitemnumber.biblionumber.title %] ([% issue.item.barcode %]). Due on [% issue.date_due | $KohaDates %]</p>
679     </div>
680 [% END %]
681 </form></div>
682
683 [% END %]<!-- /unless noissues -->
684
685 [% IF ( noissues ) %]
686     [% IF ( Koha.Preference('OnSiteCheckouts') && Koha.Preference('OnSiteCheckoutsForce') ) %]
687         <div class="yui-u">
688     [% ELSE %]
689         <div>
690     [% END %]
691 [% ELSE %]
692     <div class="yui-u">
693 [% END %]
694
695     [% IF flagged %]
696         [% IF ( noissues ) %]
697             [% IF ( Koha.Preference('OnSiteCheckouts') && Koha.Preference('OnSiteCheckoutsForce') ) %]
698                 <div id="circmessages" class="circmessage attention">
699             [% ELSE %]
700                 <h4>Checking out to [% INCLUDE 'patron-title.inc' %]</h4>
701                 <div id="circmessages" class="circmessage warning">
702             [% END %]
703             <h3>
704                 Cannot check out!
705                 [% IF ( Koha.Preference('OnSiteCheckouts') && Koha.Preference('OnSiteCheckoutsForce') ) %]
706                     <span class="circ-hlt">Only on-site checkouts are allowed</span>
707                 [% END %]
708             </h3>
709         [% ELSE %]
710             <div id="circmessages" class="circmessage attention">
711                 <h3>Attention:</h3>
712         [% END %]
713
714                 <ul>
715
716                         [% IF ( warndeparture ) %]
717                         <li><span class="circ-hlt">Expiration:</span> Patron's card will expire soon.
718                         Patron's card expires on [% expiry %] <a href="/cgi-bin/koha/members/setstatus.pl?borrowernumber=[% borrowernumber %]&amp;cardnumber=[% cardnumber %]&amp;destination=circ&amp;reregistration=y">Renew</a> or <a href="/cgi-bin/koha/members/memberentry.pl?op=modify&amp;destination=circ&amp;borrowernumber=[% borrowernumber %]&amp;categorycode=[% categorycode %]">Edit Details</a>
719
720                         </li>
721                         [% END %]
722
723                         [% IF ( returnbeforeexpiry ) %]
724                          <li><span class="circ-hlt">Set due date to expiry:</span> You have the ReturnBeforeExpiry system preference enabled this means if the
725                          expiry date is before the date due, the date due will be set to the expiry date
726                          </li>
727                         [% END %]
728
729                         [% IF ( expired ) %]
730                         <li><span class="circ-hlt">Expiration:</span> Patron's card has expired.
731                         [% IF ( expiry ) %]Patron's card expired on [% expiry %][% END %] <a href="/cgi-bin/koha/members/setstatus.pl?borrowernumber=[% borrowernumber %]&amp;cardnumber=[% cardnumber %]&amp;destination=circ&amp;reregistration=y">Renew</a> or <a href="/cgi-bin/koha/members/memberentry.pl?op=modify&amp;destination=circ&amp;borrowernumber=[% borrowernumber %]&amp;categorycode=[% categorycode %]">Edit Details</a>
732
733                         </li>
734                         [% END %]
735
736             [% IF ( gna ) %]
737                         <li class="blocker"><span class="circ-hlt">Address:</span> Patron's address in doubt</li>
738                         [% END %]
739
740             [% IF ( lost ) %]
741                         <li class="blocker"><span class="circ-hlt">Lost: </span>Patron's card is lost</li>
742                         [% END %]
743
744             [% IF ( userdebarred ) %]
745                <li class="blocker">
746                    <span class="circ-hlt"> Restricted:</span> Patron's account is restricted
747
748                    [% IF ( userdebarreddate ) %]
749                        until [% userdebarreddate %]
750                    [% END %]
751
752                    [% IF ( debarredcomment ) %]
753                        with the explanation: <br/><i>[% debarredcomment | html_line_break %]</i>
754                    [% END %]
755
756                    <br/>
757                    <a class="btn btn-small" href="#reldebarments" onclick="$('#debarments-tab-link').click()"><i class="icon-ban-circle"></i> View restrictions</a>
758                     [% IF (noissues && borrowernumber && CAN_user_circulate_force_checkout) %]
759                         <span class="override_debarment">
760                             <a href="/cgi-bin/koha/circ/circulation.pl?forceallow=1&amp;borrowernumber=[% borrowernumber %]" class="btn btn-small">Override restriction temporarily</a>
761                         </span>
762                     [% END %]
763                </li>
764             [% END %]
765
766                 [% IF ( odues ) %]<li>[% IF ( nonreturns ) %]<span class="circ-hlt">Overdues:</span> Patron has <span class="circ-hlt">ITEMS OVERDUE</span>. See highlighted items <a href="#checkouts">below</a>[% END %]</li>
767             [% END %]
768
769                 [% IF ( charges ) %]
770                             <li>
771             <span class="circ-hlt">Fees &amp; Charges:</span> Patron has  <a href="/cgi-bin/koha/members/boraccount.pl?borrowernumber=[% borrowernumber %]">Outstanding fees &amp; charges[% IF ( chargesamount ) %] of [% chargesamount %][% END %]</a>.
772                 [% IF ( charges_is_blocker ) %]
773                     Checkouts are <span class="circ-hlt">BLOCKED</span> because fine balance is <span class="circ-hlt">OVER THE LIMIT</span>.
774                 [% END %]
775             <a href="/cgi-bin/koha/members/pay.pl?borrowernumber=[% borrowernumber %]">Make payment</a></li>
776                         [% END %]
777
778                 [% IF ( credits ) %]
779                         <li>
780                 <span class="circ-hlt">Credits:</span> Patron has a credit[% IF ( creditsamount ) %] of [% creditsamount %][% END %]
781             </li>
782                         [% END %]
783
784
785
786                         </ul>
787         </div>
788
789             [% IF ( WaitingHolds ) %]
790                 <div id="holdswaiting" class="circmessage">
791                     <h4>Holds waiting:</h4>
792                     [% FOREACH w IN WaitingHolds %]
793                         <ul>
794                             <li>
795                                 <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% w.biblio.biblionumber %]">[% w.biblio.title | html %]</a>
796                                 ([% ItemTypes.GetDescription( w.item.effective_itemtype ) %]),
797                                 [% IF ( w.biblio.author ) %] by [% w.biblio.author | html %] [% END %]
798                                 [% IF ( w.item.itemcallnumber ) %] [[% w.item.itemcallnumber %]] [% END %]
799                                 Hold placed on [% w.reservedate | $KohaDates %].
800
801                                 <br/>
802                                 [% IF ( w.branch.branchcode == Branches.GetLoggedInBranchcode()  ) %]<strong class="waitinghere">[% ELSE %]<strong>[% END %]
803                                     [% SET waiting_expires_on = w.waiting_expires_on %]
804                                     Waiting at [% w.branch.branchname | html %] [% IF waiting_expires_on %] until [% waiting_expires_on | $KohaDates %] [% END %]
805                                 </strong>
806                             </li>
807                         </ul>
808                     [% END %]
809                 </div>
810             [% END %]
811
812         [% IF ( notes ) %]
813                         <div id="circnotes" class="circmessage">
814                         <h4>Notes:</h4>
815             <p><span class="circ-hlt">[% notesmsg %]</span></p>
816                         </div>
817
818
819     <!-- /If notes -->[% END %]
820
821         <div id="messages" class="circmessage">
822                 <h4>Messages:</h4>
823                 <ul>
824                         [% FOREACH lib_messages_loo IN lib_messages_loop %]
825                                 <li>
826                                         <span class="circ-hlt">
827                                                 [% lib_messages_loo.message_date_formatted %]
828                                                 [% lib_messages_loo.branchcode %]
829                                                 <i>"[% lib_messages_loo.message %]"</i>
830                                         </span>
831                                         [% IF ( lib_messages_loo.can_delete ) %]
832                                                 <a href="/cgi-bin/koha/circ/del_message.pl?message_id=[% lib_messages_loo.message_id %]&amp;borrowernumber=[% lib_messages_loo.borrowernumber %]">[Delete]</a>
833                                         [% ELSE %]
834                                                 [% IF ( all_messages_del ) %]
835                                                         <a href="/cgi-bin/koha/circ/del_message.pl?message_id=[% lib_messages_loo.message_id %]&amp;borrowernumber=[% lib_messages_loo.borrowernumber %]">[Delete]</a>
836                                                 [% END %]
837                                         [% END %]
838                                 </li>
839                         [% END %]
840                         [% FOREACH bor_messages_loo IN bor_messages_loop %]
841                                 <li><span class="">[% bor_messages_loo.message_date_formatted %] [% bor_messages_loo.branchcode %] <i>"[% bor_messages_loo.message %]"</i></span> [% IF ( bor_messages_loo.can_delete ) %]<a href="/cgi-bin/koha/circ/del_message.pl?message_id=[% bor_messages_loo.message_id %]&amp;borrowernumber=[% bor_messages_loo.borrowernumber %]">[Delete]</a>
842                 [% ELSIF ( all_messages_del ) %]
843                     <a href="/cgi-bin/koha/circ/del_message.pl?message_id=[% bor_messages_loo.message_id %]&amp;borrowernumber=[% bor_messages_loo.borrowernumber %]">[Delete]</a>
844                 [% END %]</li>
845                         [% END %]
846
847                 </ul>
848         </div>  
849         
850      <!-- /If flagged -->[% END %]
851
852         
853
854 </div>
855 </div>
856
857 <div class="yui-g"><div id="patronlists" class="toptabs">
858
859 <ul>
860     <li>
861         [% IF ( issuecount ) %]
862             <a href="#checkouts">[% issuecount %] Checkout(s)</a>
863         [% ELSE %]
864             <a href="#checkouts">0 Checkouts</a>
865         [% END %]
866     </li>
867
868     [% IF relatives_issues_count %]
869         <li><a id="relatives-issues-tab" href="#relatives-issues">Relatives' checkouts</a></li>
870     [% END %]
871
872     <li>
873         [% IF ( holds_count ) %]
874             <a href="#reserves" id="holds-tab">[% holds_count %] Hold(s)</a>
875         [% ELSE %]
876             <a href="#reserves" id="holds-tab">0 Holds</a>
877         [% END %]
878
879     <li><a id="debarments-tab-link" href="#reldebarments">[% debarments.size %] Restrictions</a></li>
880 </ul>
881
882 <!-- SUMMARY : TODAY & PREVIOUS ISSUES -->
883
884 [% INCLUDE "checkouts-table.inc" %]
885
886 [% IF ( relatives_issues_count ) %]
887     <div id="relatives-issues">
888         <table id="relatives-issues-table">
889             <thead>
890                 <tr>
891                     <th scope="col">Due date (unformatted, hidden)</th>
892                     <th scope="col">Due date</th>
893                     <th scope="col">Title</th>
894                     <th scope="col">Item type</th>
895                     <th scope="col">Checked out on</th>
896                     <th scope="col">Checked out from</th>
897                     <th scope="col">Call no</th>
898                     <th scope="col">Charge</th>
899                     <th scope="col">Price</th>
900                     <th scope="col">Patron</th>
901                 </tr>
902             </thead>
903         </table>
904     </div>
905 [% END %]
906
907 [% INCLUDE borrower_debarments.inc %]
908
909 <div id="reserves">
910 [% IF ( holds_count ) %]
911     <form action="/cgi-bin/koha/reserve/modrequest.pl" method="post">
912         <input type="hidden" name="from" value="circ" />
913         <table id="holds-table" style="width: 100% !Important;">
914             <thead>
915                 <tr>
916                     <th>Hold date</th>
917                     <th>Title</th>
918                     <th>Call number</th>
919                     <th>Barcode</th>
920                     <th>Pickup at</th>
921                     <th>Expiration</th>
922                     <th>Priority</th>
923                     <th>Delete?</th>
924                 </tr>
925             </thead>
926         </table>
927
928         <fieldset class="action">
929             <input type="submit" class="cancel" name="submit" value="Cancel marked holds" />
930         </fieldset>
931     </form>
932
933     [% IF SuspendHoldsIntranet %]
934     <fieldset class="action">
935         <form action="/cgi-bin/koha/reserve/modrequest_suspendall.pl" method="post">
936             <input type="hidden" name="from" value="circ" />
937             <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
938             <input type="submit" value="Suspend all holds" />
939
940             [% IF AutoResumeSuspendedHolds %]
941             <label for="suspend_until">until</label>
942             <input type="text" size="10" id="suspend_until" name="suspend_until" class="datepicker" />
943             <span class="hint">Specify date on which to resume [% INCLUDE 'date-format.inc' %]: </span>
944              [% END %]
945         </form>
946     </fieldset>
947
948     <fieldset class="action">
949         <form action="/cgi-bin/koha/reserve/modrequest_suspendall.pl" method="post">
950             <input type="hidden" name="from" value="circ" />
951             <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
952             <input type="hidden" name="suspend" value="0" />
953             <input type="submit" value="Resume all suspended holds" />
954         </form>
955     </fieldset>
956     [% END # IF SuspendHoldsIntranet %]
957
958 [% ELSE %]
959         <p>Patron has nothing on hold.</p>
960 [% END %]
961 </div> <!-- reservesloop -->
962
963 [% END %] <!-- borrowernumber -->
964 </div></div>
965 [% END %]
966
967
968
969 </div>
970 </div>
971 [% UNLESS ( borrowers ) %][% IF ( borrowernumber ) %]<div class="yui-b">
972 [% INCLUDE 'circ-menu.inc' %]
973 </div>[% END %][% END %]
974 </div>
975 <!-- Modal -->
976 <div id="barcodeSubmittedModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="barcodeSubmittedModalLabel" aria-hidden="true">
977     <div class="modal-header">
978         <h3 id="barcodeSubmittedModalLabel">Barcode submitted</h3>
979     </div>
980
981     <div class="modal-body">
982         <p>You have already submitted a barcode, please wait for the checkout to process...</p>
983     </div>
984 </div>
985 [% INCLUDE 'intranet-bottom.inc' %]