8 [% USE TablesSettings %]
11 [% USE AuthorisedValues %]
12 [% PROCESS 'i18n.inc' %]
13 [% SET footerjs = 1 %]
14 [% INCLUDE 'doc-head-open.inc' %]
15 [% Asset.css("lib/jquery/plugins/rowGroup/stylesheets/rowGroup.dataTables.min.css") | $raw %]
16 [% SET destination = "circ" %]
17 <title>[% FILTER collapse %]
19 [% patron_in_title = INCLUDE 'patron-title.inc' invert_name = 1 no_html = 1 %]
20 [% tx("Checking out to {patron}", { patron = patron_in_title }) | html %] ›
22 [% t("Circulation") | html %] ›
23 [% t("Koha") | html %]
25 [% INCLUDE 'doc-head-close.inc' %]
28 <body id="circ_circulation" class="circ">
30 [% WRAPPER 'header.inc' %]
31 [% INCLUDE 'circ-search.inc' %]
34 [% WRAPPER 'sub-header.inc' %]
35 [% WRAPPER breadcrumbs %]
36 [% WRAPPER breadcrumb_item %]
37 <a href="/cgi-bin/koha/circ/circulation-home.pl">Circulation</a>
40 [% WRAPPER breadcrumb_item %]
41 <a href="/cgi-bin/koha/circ/circulation.pl">Checkouts</a>
43 [% WRAPPER breadcrumb_item bc_active= 1 %]
44 [% INCLUDE 'patron-title.inc' %]
47 [% WRAPPER breadcrumb_item bc_active= 1 %]
48 <span>Checkouts</span>
51 [% END #/ WRAPPER breadcrumbs %]
52 [% END #/ WRAPPER sub-header.inc %]
54 <div class="main container-fluid">
57 <div class="col-sm-10 col-sm-push-2">
58 [% INCLUDE 'messages.inc' %]
61 [% INCLUDE 'members-toolbar.inc' %]
66 <!-- INITIAL BLOC : PARAMETERS & BORROWER INFO -->
67 [% IF ( was_renewed ) %]
68 <div class="dialog message">Patron's account has been renewed until [% expiry | $KohaDates %]</div>
72 <div id="autoswitched" class="dialog message">Patron was automatically switched by reading the patron card during checking out. Ensure you are working with the right patron.</div>
75 [% IF ADDITIONAL_MATERIALS && !NEEDSCONFIRMATION %]
76 <div id="materials" class="dialog message">
77 <span class="mats_spec_label">Note about the accompanying materials: </span>
78 <span class="mats_spec_message">[% ADDITIONAL_MATERIALS | html %]</span>
82 [% IF CLAIM_RESOLUTION %]
83 <div class="dialog message">The previously claimed returned item has been found, automatically resolving the associated claim.</div>
85 [% IF ( alert.ITEM_LOST ) %]
86 <div class="dialog message">This item has been lost with a status of "[% alert.ITEM_LOST | html %]".</div>
89 [% IF ( alert.OTHER_CHARGES ) %]
90 <div class="dialog message">The patron has unpaid charges for holds, rentals etc of [% alert.OTHER_CHARGES | $Price %]</div>
93 [% IF alert.HIGHHOLDS %]
94 <div class="dialog message">High demand item. <strong>Loan period was not shortened due to override.</strong> Shortened due date would have been [% alert.HIGHHOLDS.returndate | $KohaDates %] ([% alert.HIGHHOLDS.duration | html %] days).</div>
97 [% IF alert.RETURNED_FROM_ANOTHER %]
98 <div class="dialog alert">Item was checked out to [% INCLUDE 'patron-title.inc' patron = alert.RETURNED_FROM_ANOTHER.patron %] and was returned automatically.</div>
101 [% IF alert.BOOKED %]
102 <div class="dialog alert">Item is booked by this user</div>
105 [% IF ( nopermission ) %]
106 <div class="dialog alert">Staff members are not allowed to discharge borrowers, nor borrowers to request a discharge.</div>
109 [% IF is_anonymous %]
110 <div class="dialog alert">This is the anonymous patron, so circulation is disabled.</div>
113 [% IF ( NEEDSCONFIRMATION ) %]
114 <div id="circ_needsconfirmation" class="dialog alert audio-alert-action focus" tabindex="-1">
115 [% IF CAN_user_circulate_force_checkout or ADDITIONAL_MATERIALS %]
116 <h3>Please confirm checkout</h3>
118 <h3>Cannot check out</h3>
122 [%IF ( AGE_RESTRICTION ) %]
123 <li class="needsconfirm age_restriction">
124 Age restriction [% AGE_RESTRICTION | html %].
125 [% IF CAN_user_circulate_force_checkout %]
133 <li class="needsconfirm debt">The patron has a debt of [% DEBT | $Price %].</li>
136 [% IF ( DEBT_GUARANTEES ) %]
137 <li class="needsconfirm debt_guarantees">The patron's guarantees collectively have a debt of [% DEBT_GUARANTEES | $Price %].</li>
140 [% IF ( DEBT_GUARANTORS ) %]
141 <li class="needsconfirm debt_gaurantors">The patron's guarantors and their other guarantees collectively have a debt of [% DEBT_GUARANTORS | $Price %].</li>
144 [% IF ( RENTALCHARGE && RENTALCHARGE > 0 ) %]
145 <li class="needsconfirm rentalcharge">Rental charge for this item: [% RENTALCHARGE | $Price %]</li>
148 [% IF ( RENEW_ISSUE ) %]
149 <li class="needsconfirm renew_issue">Item <em>[% getTitleMessageIteminfo | html %]</em> ([% getBarcodeMessageIteminfo | html %]) is currently checked out to this patron. Renew?</li>
152 [% IF ( RESERVE_WAITING ) %]
153 <li class="needsconfirm reserve_waiting">Item <em>[% getTitleMessageIteminfo | html %]</em> ([% getBarcodeMessageIteminfo | html %]) has been waiting for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% resborrowernumber | uri %]">[% resfirstname | html %] [% ressurname | html %]</a> ([% rescardnumber | html %]) at [% Branches.GetName( resbranchcode ) | html %] since [% reswaitingdate | $KohaDates %]</li>
156 [% IF ( TRANSFERRED ) %]
157 <li class="needsconfirm transferred">Item <em>[% getTitleMessageIteminfo | html %]</em> ([% getBarcodeMessageIteminfo | html %]) is on hold for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% resborrowernumber | uri %]">[% resfirstname | html %] [% ressurname | html %]</a> ([% rescardnumber | html %]) and being transferred to [% Branches.GetName( resbranchcode ) | html %]</li>
160 [% IF ( PROCESSING ) %]
161 <li class="needsconfirm processing">Item <em>[% getTitleMessageIteminfo | html %]</em> ([% getBarcodeMessageIteminfo | html %]) is being processed for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% resborrowernumber | uri %]">[% resfirstname | html %] [% ressurname | html %]</a> ([% rescardnumber | html %]) at [% Branches.GetName( resbranchcode ) | html %]</li>
164 [% IF ( RESERVED ) %]
165 <li class="needsconfirm reserved">Item <em>[% getTitleMessageIteminfo | html %]</em> ([% getBarcodeMessageIteminfo | html %]) has been on hold for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% resborrowernumber | uri %]">[% resfirstname | html %] [% ressurname | html %]</a> ([% rescardnumber | html %]) at [% Branches.GetName( resbranchcode ) | html %] since [% resreservedate | $KohaDates %]</li>
168 [% IF ( ISSUED_TO_ANOTHER ) %]
169 <li class="needsconfirm issued_to_another">Item <em>[% getTitleMessageIteminfo | html %]</em> ([% getBarcodeMessageIteminfo | html %]) is checked out to <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% issued_borrowernumber | uri %]">[% issued_firstname | html %] [% issued_surname | html %]</a> ([% issued_cardnumber | html %]).
170 [% IF CAN_user_circulate_force_checkout %]
171 Check in and check out?
176 [% IF TOO_MANY and TOO_MANY == 'TOO_MANY_CHECKOUTS' %]
177 <li class="needsconfirm too_many_checkouts">Too many checked out. [% current_loan_count | html %] checked out, only [% max_loans_allowed | html %] are allowed.</li>
178 <li class="needsconfirm too_many_checkouts2">
179 Maximum checkouts calculated from the circulation rule for
180 [% INCLUDE circulation_rule_criteria rule=circulation_rule_TOO_MANY %]
184 [% IF TOO_MANY and TOO_MANY == 'TOO_MANY_ONSITE_CHECKOUTS' %]
185 <li class="needsconfirm too_many_onsite_checkouts">Too many on-site checked out. [% current_loan_count | html %] on-site checked out, only [% max_loans_allowed | html %] are allowed.</li>
186 <li class="needsconfirm too_many_onsite_checkouts2">
187 Maximum checkouts calculated from the circulation rule for
188 [% INCLUDE circulation_rule_criteria rule=circulation_rule_TOO_MANY %]
192 [% IF ( BORRNOTSAMEBRANCH ) %]
193 <li class="needsconfirm borrower_not_same_branch">This patron is from a different library ([% Branches.GetName( BORRNOTSAMEBRANCH ) | html %])</li>
196 [% IF ( PATRON_CANT ) %]
197 <li class="needsconfirm patron_cant">This patron can't check out this item per library circulation policy.</li>
200 [% IF ( TOO_MANY and TOO_MANY == 'NO_RULE_DEFINED' ) %]
201 <li class="needsconfirm no_rule_defined">No circulation rule is defined for this patron and itemtype combination.</li>
204 [% IF ( NOT_FOR_LOAN_FORCING ) %]
205 <li class="needsconfirm not_for_loan_forcing">
206 [% IF ( itemtype_notforloan ) %]
207 <span>Item type is normally not for loan.</span>
208 [% ELSIF ( item_notforloan ) %]
209 [% item_notforloan_lib = AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.notforloan', authorised_value => item.notforloan ) %]
210 <span>Item is normally not for loan</span>[% IF (item_notforloan_lib) %] ([% item_notforloan_lib | html %])[% END %].
212 [% IF CAN_user_circulate_force_checkout %]
213 <span>Check out anyway?</span>
218 [% IF ( USERBLOCKEDOVERDUE ) %]
219 <li class="needsconfirm userblocked_overdue">Patron has [% USERBLOCKEDOVERDUE %] overdue item(s).
220 [% IF CAN_user_circulate_force_checkout %]
226 [% IF ( ITEM_LOST ) %]
227 <li class="needsconfirm item_lost">This item has been lost with a status of "[% ITEM_LOST | html %]".
228 [% IF CAN_user_circulate_force_checkout %]
235 <li class="needsconfirm highholds">High demand item. Loan period shortened to [% HIGHHOLDS.duration | html %] days (due [% HIGHHOLDS.returndate | $KohaDates %]). Check out anyway?</li>
239 <li class="needsconfirm previssue">Patron has previously checked out this title: <strong>[% biblio.title | html %] [% IF biblio.author %] by [% biblio.author | html %][% END %]</strong>. Check out anyway?</li>
242 [% IF BIBLIO_ALREADY_ISSUED %]
243 <li class="needsconfirm already_issued">
244 Patron has already checked out another item from this record.
245 [% IF CAN_user_circulate_force_checkout %]
251 [% IF ADDITIONAL_MATERIALS %]
252 <li class="needsconfirm additional_materials">
253 Please confirm that the accompanying materials are present: [% ADDITIONAL_MATERIALS | html %]
258 [% IF RECALLED.waiting %]
259 <li class="needsconfirm recalled">Item <i>[% RECALLED.biblio.title | html %]</i> ([% RECALLED.item.barcode | html %]) has been waiting for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% RECALLED.patron_id | uri %]">[% RECALLED.patron.firstname | html %] [% RECALLED.patron.surname | html %]</a> ([% RECALLED.patron.cardnumber | html %]) at [% Branches.GetName( RECALLED.pickup_library_id ) | html %] since [% RECALLED.waiting_date | $KohaDates %]</li>
260 [% ELSIF RECALLED.requested or RECALLED.overdue %]
261 <li class="needsconfirm recalled2">Item <i>[% RECALLED.biblio.title | html %]</i> [% IF RECALLED.item %]([% RECALLED.item.barcode | html %])[% END %] has been recalled by <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% RECALLED.patron_id | uri %]">[% RECALLED.patron.firstname | html %] [% RECALLED.patron.surname | html %]</a> ([% RECALLED.patron.cardnumber | html %]) at [% Branches.GetName( RECALLED.pickup_library_id ) | html %] since [% RECALLED.created_date | $KohaDates %]</li>
265 [% IF ( BOOKED_TO_ANOTHER ) %]
266 <li class="needsconfirm booked_to_another">
267 Due for another patron booking by: [% BOOKED_TO_ANOTHER.start_date | $KohaDates %]
271 [% IF ( BOOKED_EARLY ) %]
272 <li class="needsconfirm booked_early">
273 Patron has this item booked for checkout on [% BOOKED_EARLY.start_date | $KohaDates %]
278 [% IF CAN_user_circulate_force_checkout or HIGHHOLDS %]
279 <form method="post" action="/cgi-bin/koha/circ/circulation.pl" autocomplete="off">
280 [% INCLUDE 'csrf-token.inc' %]
282 <input type="hidden" name="restoreduedatespec" />
283 <input type="hidden" name="op" value="cud-checkout" />
285 [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
288 <p class="circ-override-high-holds">
289 <input type="checkbox" name="override_high_holds_tmp" id="override_high_holds_tmp" value="1" />
290 <label for="override_high_holds_tmp">Don't decrease loan length based on holds</label>
294 [% IF ( RESERVED ) %]
296 <input type="checkbox" id="cancelreserve" name="cancelreserve" value="cancel" />
297 <label for="cancelreserve">Cancel hold</label>
301 [% IF ( RESERVE_WAITING ) %]
303 <label for="cancelreserve">Cancel hold</label>
304 <input type="radio" value="cancel" name="cancelreserve" id="cancelreserve" /><br />
305 <label for="revertreserve">Revert waiting status</label>
306 <input type="radio" value="revert" name="cancelreserve" id="revertreserve" checked="checked"/>
310 [% IF ( TRANSFERRED ) %]
312 <label for="cancelreserve">Cancel hold</label>
313 <input type="radio" value="cancel" name="cancelreserve" id="cancelreserve" /><br />
314 <label for="revertreserve">Revert hold transfer status</label>
315 <input type="radio" value="revert" name="cancelreserve" id="revertreserve" checked="checked"/>
319 [% IF ( PROCESSING ) %]
321 <label for="cancelreserve">Cancel hold</label>
322 <input type="radio" value="cancel" name="cancelreserve" id="cancelreserve" /><br />
323 <label for="revertreserve">Revert In Processing status</label>
324 <input type="radio" value="revert" name="cancelreserve" id="revertreserve" checked="checked"/>
328 [% IF ( RECALLED ) %]
330 <label for="cancelrecall">Cancel recall</label>
331 <input type="radio" value="cancel" name="cancel_recall" id="cancelrecall" />
332 <input type="hidden" value="[% RECALLED.id | html %]" name="recall_id" />
334 [% IF RECALLED.waiting %]
336 <label for="revertrecall">Revert waiting status</label>
337 <input type="radio" value="revert" name="cancel_recall" id="revertrecall" checked="checked"/>
338 <input type="hidden" value="[% RECALLED.id | html %]" name="recall_id" />
343 <input type="hidden" name="barcode" value="[% barcode | html %]" />
344 <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
345 <input type="hidden" name="issueconfirmed" value="1" />
346 <input type="hidden" name="override_high_holds" value="[% override_high_holds | html %]"/>
348 [% IF ( DEBT ) %]<input type="hidden" name="debt_confirmed" value="1" />[% END %]
350 [% IF ( INVALID_DATE ) %]
352 <input type="text" size="20" id="duedatespec" name="duedatespec" value="[% duedatespec | html %]" class="flatpickr" data-flatpickr-enable-time="true" data-flatpickr-on-close-focus="#barcode" />
353 <label for="duedatespec">Due date</label>
356 <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
359 [% IF ( BOOKED_TO_ANOTHER ) %]
361 <label for="reduceddue">Reducing due date to: <label>
362 <input type="text" size="20" id="reduceddue" name="reduceddue" value="[% reduceddue | html %]" class="flatpickr" data-flatpickr-futuredate="true" data-flatpickr-maxdate="[% reduceddue | html %]" required="required">
366 [% IF ( BOOKED_EARLY ) %]
368 Allow early collection?
372 <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
373 <input type="hidden" name="branch" value="[% branch | html %]" />
375 [% IF ( RENEW_ISSUE ) %]
376 <button type="submit" class="approve" accesskey="y"><i class="fa fa-check"></i> Yes, renew (Y)</button>
378 <button type="submit" class="approve" accesskey="y"><i class="fa fa-check"></i> Yes, check out (Y)</button>
381 <input type="hidden" name="onsite_checkout" value="[% onsite_checkout | html %]" />
382 <input type="hidden" name="auto_renew" value="[% auto_renew | html %]" />
385 [% END # /IF CAN_user_circulate_force_checkout or HIGHHOLDS %]
387 [% IF ADDITIONAL_MATERIALS && !CAN_user_circulate_force_checkout %]
388 <form method="post" action="/cgi-bin/koha/circ/circulation.pl" autocomplete="off">
389 [% INCLUDE 'csrf-token.inc' %]
390 <input type="hidden" name="op" value="cud-checkout" />
391 <input type="hidden" name="restoreduedatespec" />
393 [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
395 <input type="hidden" name="barcode" value="[% barcode | html %]" />
396 <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
397 <input type="hidden" name="issueconfirmed" value="1" />
398 <input type="hidden" name="override_high_holds" value="[% override_high_holds | html %]"/>
399 <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
400 <input type="hidden" name="branch" value="[% branch | html %]" />
402 [% IF ( RENEW_ISSUE ) %]
403 <button type="submit" class="approve" accesskey="y"><i class="fa fa-check"></i> Yes, renew (Y)</button>
405 <button type="submit" class="approve" accesskey="y"><i class="fa fa-check"></i> Yes, check out (Y)</button>
408 <input type="hidden" name="onsite_checkout" value="[% onsite_checkout | html %]" />
409 <input type="hidden" name="auto_renew" value="[% auto_renew | html %]" />
411 [% END # /IF ADDITIONAL_MATERIALS %]
413 [% IF ( RESERVED or RESERVE_WAITING or TRANSFERRED or PROCESSING ) %]
414 <form method="post" action="/cgi-bin/koha/circ/circulation.pl">
415 [% INCLUDE 'csrf-token.inc' %]
416 <input type="hidden" name="op" value="cud-confirm_hold" />
417 <input type="hidden" name="restoreduedatespec" />
418 <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
419 <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
420 <input type="hidden" name="confirm_hold" value="[% reserve_id | html %]" />
421 <input type="hidden" name="hold_branch" value="[% resbranchcode | html %]" />
422 <input type="hidden" name="hold_borrower" value="[% resborrowernumber | html %]" />
423 <input type="hidden" name="hold_itemnumber" value="[% item.itemnumber | html %]" />
424 <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
425 <button class="print" type="submit" onclick="Dopop('hold-transfer-slip.pl?reserve_id=[% reserve_id | uri %]&itemnumber=[% item.id | html %]');this.form.submit();"><i class="fa fa-print"></i> Don't check out, confirm hold, and print slip (P)</button>
429 [% IF ( RECALLED ) %]
430 <form method="get" action="/cgi-bin/koha/circ/circulation.pl">
431 <button class="print" type="submit" onclick="Dopop('/cgi-bin/koha/recalls/recall_pickup_slip.pl?recall_id=[% RECALLED.id | html %]');this.form.submit();"><i class="fa fa-print"></i> Don't check out and print slip (P)</button>
435 <form method="get" action="/cgi-bin/koha/circ/circulation.pl">
436 [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
437 <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
438 <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
439 <input type="hidden" name="restoreduedatespec" />
440 <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
441 [% IF CAN_user_circulate_force_checkout or HIGHHOLDS or ADDITIONAL_MATERIALS %]
442 [% IF ( RENEW_ISSUE ) %]
443 <button type="submit" class="deny" accesskey="n"><i class="fa fa-times"></i> No, don't renew (N)</button>
445 <button type="submit" class="deny" accesskey="n"><i class="fa fa-times"></i> No, don't check out (N)</button>
448 <button type="submit" class="deny"><i class="fa fa-times"></i> Continue</button>
452 [% IF ( RESERVED || ISSUED_TO_ANOTHER || RECALLED ) && (CAN_user_reserveforothers_place_holds ) %]
453 [% UNLESS noissues %]
454 <button type="submit" onclick="window.location.href='/cgi-bin/koha/reserve/request.pl?biblionumber=[% itembiblionumber | html %]&borrowernumber=[% patron.borrowernumber | html %]'"><i class="fa-solid fa-note-sticky"></i> Cancel checkout and place a hold for [% INCLUDE 'patron-title.inc' %]</button>
457 </div> <!-- /#circ_needsconfirmation -->
458 [% END # /NEEDSCONFIRMATION %]
460 [% IF ( IMPOSSIBLE ) %]
461 <div id="circ_impossible" class="dialog alert audio-alert-warning focus" tabindex="-1">
462 [% IF ( UNKNOWN_BARCODE ) %]
463 <h3>Barcode not found</h3>
466 <!-- RESULT OF ISSUING REQUEST -->
468 [% IF ( DEBT_GUARANTORS ) %]
469 <li>The patron's guarantors and their other guarantees collectively have a debt of [% DEBT_GUARANTORS | $Price %].</li>
473 <li>Local use recorded</li>
474 [% IF ( CHECKEDIN ) %]
475 <li>Item checked in from: [% INCLUDE 'patron-title.inc' patron=BORROWER %]</li>
477 [% IF ( MESSAGES.ResFound ) %]
478 <li>Item on hold, please checkin.</li>
480 [% IF ( MESSAGES.ReturnClaims ) %]
481 <li>Item claimed returned, please checkin.</li>
483 [% IF ( MESSAGES.RecallFound ) %]
484 <li>Item can fill a recall, please checkin.</li>
486 [% IF ( MESSAGES.WasLost ) %]
487 [% IF ( Koha.Preference('BlockReturnOfLostItems') ) %]
488 <li>Item was lost, cannot be returned.</li>
490 <li>Item was lost, now found.</li>
493 [% IF ( MESSAGES.withdrawn ) %]
494 [% IF ( Koha.Preference('BlockReturnOfWithdrawnItems') ) %]
495 <li>Item was withdrawn, cannot be returned.</li>
497 <li>Item was withdrawn</li>
501 [% IF ( INVALID_DATE ) %]
502 <li>The due date "[% INVALID_DATE | $KohaDates %]" is invalid</li>
505 [% IF ( UNKNOWN_BARCODE ) %]
506 <li>The barcode was not found: <span class="ex">[% barcode | html %]</span>
508 [% IF ( FALLBACK ) %]
510 <button type="button" class="approve" data-toggle="modal" data-target="#itemSearchFallback"><i class="fa fa-search"></i> Show matching titles</button>
512 <div>No items were found by searching.</div>
516 [% IF ( fast_cataloging ) %]
517 [% IF ( CAN_user_editcatalogue_fast_cataloging ) %]
518 <a class="approve" href="/cgi-bin/koha/cataloguing/addbiblio.pl?frameworkcode=FA&barcode=[% barcode |uri %]&circborrowernumber=[% patron.borrowernumber | html %]&branch=[% branch | html %]&duedatespec=[% duedatespec | html %]&stickyduedate=[% stickyduedate | html %]"><i class="fa fa-plus"></i> Add record using fast cataloging</a>
525 [% IF ( NOT_FOR_LOAN ) %]
527 [% IF ( itemtype_notforloan ) %]
528 Item type not for loan.
529 [% ELSIF ( item_notforloan ) %]
530 [% item_notforloan_lib = AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.notforloan', authorised_value => item.notforloan ) %]
531 Item not for loan[% IF (item_notforloan_lib) %] ([% item_notforloan_lib | html %])[% END %].
536 [% IF ( WTHDRAWN ) %]
538 <span>Item has been withdrawn</span>
539 [% item_withdrawn_lib = AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.withdrawn', authorised_value => item.withdrawn ) %]
540 [% IF (item_withdrawn_lib) %]<span class="co-withdrawn">([% item_withdrawn_lib | html %])</span>[% END %]
544 [% IF ( RESTRICTED ) %]
545 <li>Item is restricted</li>
549 <li>Patron's address is in doubt</li>
552 [% IF ( CARD_LOST ) %]
553 <li>Patron's card is lost</li>
556 [% IF ( DEBARRED ) %]
557 <li>Patron is restricted</li>
560 [% IF ( NO_MORE_RENEWALS ) %]
561 <li>No more renewals possible</li>
564 [% IF NO_RENEWAL_FOR_ONSITE_CHECKOUTS %]
565 <li>This item can not be renewed, it's an on-site checkout</li>
568 [%IF ( AGE_RESTRICTION ) %]
569 <li>Age restriction [% AGE_RESTRICTION | html %].</li>
573 <li>Patron's card is expired</li>
576 [% IF ( TOO_MANY ) %]
577 <li>Too many checked out. [% current_loan_count | html %] checked out, only [% max_loans_allowed | html %] are allowed.</li>
579 Maximum checkouts calculated from the circulation rule for
580 [% INCLUDE circulation_rule_criteria rule=circulation_rule_TOO_MANY %]
584 [% IF ( ITEMNOTSAMEBRANCH ) %]
585 <li>This item belongs to [% Branches.GetName( itemhomebranch ) | html %] and cannot be checked out from this location.</li>
588 [% IF RETURN_IMPOSSIBLE %]
589 <li>This item must be returned to [% Branches.GetName( branch_to_return ) | html %].</li>
592 [% IF ( USERBLOCKEDWITHENDDATE ) %]
593 <li>Patron has a restriction until [% USERBLOCKEDWITHENDDATE | $KohaDates %].</li>
596 [% IF ( USERBLOCKEDNOENDDATE ) %]
597 <li>Patron has an indefinite restriction.</li>
600 [% IF ( USERBLOCKEDOVERDUE ) %]
601 <li>Checkouts are BLOCKED because patron has overdue items.</li>
604 [% IF ( RECALLED_INTRANSIT ) %]
605 <li>Item has been recalled and is in transit for pickup at [% Branches.GetName( RECALLED_INTRANSIT ) | html %].</li>
608 [% IF NO_OPEN_DAYS %]
609 <li>No open days found while calculating the due date. Check the library calendar.</li>
613 [% IF (forceallow) %]
614 <li>Restriction overridden temporarily.</li>
617 [% IF ( BOOKED_TO_ANOTHER ) %]
618 <li>The item is booked for another patron</li>
621 </div> <!-- /#circ_impossible -->
623 [% IF ( FALLBACK ) %]
626 <div class="modal" id="itemSearchFallback" tabindex="-1" role="dialog" aria-labelledby="itemSearchFallbackLabel">
627 <div class="modal-dialog modal-wide" role="document">
628 <div class="modal-content">
629 <div class="modal-header">
630 <button type="button" class="closebtn" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
631 <h3 id="itemSearchFallbackLabel"><h3>Barcode not found. The following items were found by searching:</h3>
633 <div class="modal-body">
634 <table class="table_borrowers">
641 <th>Inventory number</th>
642 <th>Serial enumeration</th>
644 [% IF ( item_level_itypes ) %]<th>Item type</th>[% END %]
649 [% FOREACH item IN options %]
652 <a target="_blank" href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% item.biblionumber | html %]">[% item.biblio.title | html %] <i class="fa-solid fa-window-restore"></i></a>
653 [% IF item.onloan %]<span style="float: right; color: red; margin-left:5px;">Checked out</span>[% END %]
656 [% item.barcode | html %]
658 <td>[% item.itemcallnumber | html %]</th>
659 <td>[% item.copynumber | html %]</th>
660 <td>[% item.stocknumber| html %]</th>
661 <td>[% item.enumchron| html %]</th>
663 [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.ccode', authorised_value => item.ccode ) | html %]
665 [% IF ( item_level_itypes ) %]
667 [% ItemTypes.GetDescription( item.itype ) | html %]
671 <form method="post" action="/cgi-bin/koha/circ/circulation.pl" autocomplete="off">
672 [% INCLUDE 'csrf-token.inc' %]
673 [% IF (forceallow) %]
674 <input type="hidden" name="forceallow" value="1">
676 <input type="hidden" name="restoreduedatespec" />
677 <input type="hidden" name="op" value="cud-checkout" />
678 <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
679 <input type="hidden" name="duedatespec" value="[% duedatespec | html %]" />
680 <input type="hidden" name="stickyduedate" value="[% stickyduedate | html %]" />
681 <input type="hidden" name="branch" value="[% branch | html %]" />
682 <input type="hidden" name="barcode" value="[% item.barcode | html %]" />
683 <input type="hidden" name="onsite_checkout" value="[% onsite_checkout | html %]" />
684 <input type="hidden" name="auto_renew" value="[% auto_renew | html %]" />
685 <button class="btn btn-default btn-xs" type="submit" name="x"><i class="fa fa-check"></i> Check out</button>
692 </div> <!-- /.modal-body -->
693 <div class="modal-footer">
694 <button type="button" class="btn btn-default" data-dismiss="modal">Cancel</button>
696 </div> <!-- /.modal-content -->
697 </div> <!-- /.modal-dialog.modal-wide -->
698 </div> <!-- /#itemSearchFallback -->
699 [% END # /IF options %]
700 [% END # /IF FALLBACK %]
702 [% ELSE # IF IMPOSSIBLE %]
703 [% IF (forceallow) %]
704 <div id="overridden_debarment" class="dialog alert">Restriction overridden temporarily</div>
706 [% END # /IF IMPOSSIBLE %]
708 <span class="audio-alert-success"></span>
711 <p>Item checked out</p>
715 [% INCLUDE 'patron-toolbar.inc' %]
716 <h4>No patron matched <span class="ex">[% message | html %]</span></h4>
719 <!-- BARCODE ENTRY -->
723 [% IF patron.privacy == 2 AND NOT Koha.Preference('AnonymousPatron') %]
724 <div class="dialog alert">
725 <strong>Error:</strong> This patron has requested their circulation history be anonymized on check-in, but the AnonymousPatron system preference is empty or incorrect.
730 [% IF ( !noissues ) || ( Koha.Preference('OnSiteCheckouts') && Koha.Preference('OnSiteCheckoutsForce') )%]
731 <div class="col-sm-6">
732 <form method="post" action="/cgi-bin/koha/circ/circulation.pl" id="mainform" name="mainform" autocomplete="off">
733 [% INCLUDE 'csrf-token.inc' %]
734 <input type="hidden" name="op" value="cud-checkout" />
735 <input type="hidden" name="restoreduedatespec" />
737 <fieldset id="circ_circulation_issue" class="lastchecked">
739 <fieldset id="circ_circulation_issue">
742 [% IF Koha.Preference('DisplayClearScreenButton') == 'issueslip' %]
743 <span id="clearscreen"><a href="/cgi-bin/koha/circ/circulation.pl" title="Clear screen">x</a></span>
744 <span class="printslip printclearscreen" data-clear="true" data-code="issueslip"><a href="#" title="Print slip and clear screen"><i class="fa fa-print"></i></a></span>
745 [% ELSIF Koha.Preference('DisplayClearScreenButton') == 'issueqslip' %]
746 <span id="clearscreen"><a href="/cgi-bin/koha/circ/circulation.pl" title="Clear screen">x</a></span>
747 <span class="printslip printclearscreen" data-clear="true" data-code="issueqslip"><a href="#" title="Print quick slip and clear screen"><i class="fa fa-print"></i></a></span>
750 [% IF (forceallow) %]<input type="hidden" name="forceallow" value="1">[% END %]
752 <label class="circ_barcode" for="barcode">Checking out to [% INCLUDE 'patron-title.inc' %]</label>
754 [% IF NEEDSCONFIRMATION %]
755 <input type="text" name="barcode" id="barcode" class="barcode focus" size="14" disabled="disabled" />
757 [% IF Koha.Preference('itemBarcodeFallbackSearch') %]
758 <input type="text" name="barcode" id="barcode" class="barcode focus" size="14" placeholder="Enter item barcode or keyword" />
760 <input type="text" name="barcode" id="barcode" class="barcode focus" size="14" placeholder="Enter item barcode" />
764 <div id="show-circ-settings">
765 <a href="#" title="Checkout settings"><i class="fa-solid fa-sliders"></i></a>
768 <button type="submit" class="btn btn-primary">Check out</button>
770 <div class="circ-settings">
772 [% UNLESS ( noissues && Koha.Preference('OnSiteCheckoutsForce') ) %]
773 [% IF ( SpecifyDueDate ) %]
774 <div id="specify-due-date" class="circ-setting">
775 <div class="hint">Specify due date [% INCLUDE 'date-format.inc' %]: </div>
776 [% IF ( duedatespec ) %]
777 <input type="text" size="20" id="duedatespec" name="duedatespec" value="[% duedatespec | html %]" class="flatpickr" data-flatpickr-enable-time="true" data-flatpickr-on-close-focus="#barcode" />
779 <input type="text" size="20" id="duedatespec" name="duedatespec" value="" class="flatpickr" data-flatpickr-enable-time="true" data-flatpickr-on-close-focus="#barcode" />
781 <label for="stickyduedate"> Remember for session:</label>
782 [% IF ( stickyduedate ) %]
783 <input type="checkbox" id="stickyduedate" onclick="this.form.barcode.focus();" name="stickyduedate" checked="checked" />
785 <input type="checkbox" id="stickyduedate" onclick="this.form.barcode.focus();" name="stickyduedate" />
791 [% UNLESS ( noissues ) %]
792 [% IF Koha.Preference('AllowSetAutomaticRenewal') %]
793 <div id="set-automatic-renewal" class="circ-setting">
794 [% IF NEEDSCONFIRMATION %]
796 [% IF patron.autorenew_checkouts %]
797 <input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" disabled="disabled"
798 title="Patron has opted out of auto-renewal"/>
800 <input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" disabled="disabled" checked="checked" />
803 <input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" disabled="disabled" />
806 [% IF ( auto_renew && patron.autorenew_checkouts ) %]
807 <input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" class="circ_setting" checked="checked" />
808 [% ELSIF patron.autorenew_checkouts %]
809 <input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" class="circ_setting" />
811 <input type="checkbox" name="auto_renew" id="auto_renew" value="auto_renew" disabled="disabled"
812 title="Patron has opted out of auto-renewal"/>
816 <label for="auto_renew">Automatic renewal</label>
819 [% IF Koha.Preference('decreaseLoanHighHolds') %]
820 <div id="set_high_holds_overrride" class="circ-setting">
821 [% IF NEEDSCONFIRMATION %]
822 [% IF override_high_holds %]
823 <input type="checkbox" name="override_high_holds" id="override_high_holds" value="1" disabled="disabled" checked="checked"/>
825 <input type="checkbox" name="override_high_holds" id="override_high_holds" value="1" disabled="disabled"/>
828 [% IF override_high_holds %]
829 <input type="checkbox" name="override_high_holds" id="override_high_holds" value="1" class="circ_setting" checked="checked" />
831 <input type="checkbox" name="override_high_holds" id="override_high_holds" value="1" class="circ_setting" />
834 <label for="override_high_holds">Don't decrease checkout length based on holds</label>
839 [% IF Koha.Preference('OnSiteCheckouts') %]
840 <div id="onsite_checkout-select" class="circ-setting">
842 <div class="onsite-checkout-only">
843 <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>
844 <input type="text" name="duedatespec" id="duedatespec" class="flatpickr" data-flatpickr-enable-time="true" data-flatpickr-on-close-focus="#barcode" />
845 <input type="hidden" name="onsite_checkout" checked="checked" value="1" />
848 [% IF Koha.Preference('OnSiteCheckoutAutoCheck') && onsite_checkout == "on" %]
849 <input type="checkbox" id="onsite_checkout" name="onsite_checkout" class="circ_setting" checked="checked" /> <label for="onsite_checkout">On-site checkout</label>
851 <input type="checkbox" id="onsite_checkout" name="onsite_checkout" class="circ_setting" /> <label for="onsite_checkout">On-site checkout</label>
857 </div> <!-- /.circ-settings -->
859 <input type="hidden" name="borrowernumber" id="borrowernumber" value="[% patron.borrowernumber | html %]" />
860 <input type="hidden" name="branch" value="[% branch | html %]" />
861 <input type="hidden" name="debt_confirmed" value="[% debt_confirmed | html %]" />
863 <input type="hidden" name="charges" value="yes" />
865 </fieldset> <!-- /#circ_circulation_issue -->
868 <div class="lastchecked">
870 <strong>Checked out: </strong>
871 [% issue.item.biblio.title | html %] ([% issue.item.barcode | html %]).
873 [% IF issue.item.is_bundle %]
874 [% SET bundle_items_count = issue.item.bundle_items.count %]
875 [% tnx('Bundle of {count} item', 'Bundle of {count} items', bundle_items_count, { count = bundle_items_count }) | html %].
878 Due on [% issue.date_due | $KohaDates as_due_date => 1 %]
882 </form> <!-- /#mainform -->
883 </div> <!-- /.col-sm-6 -->
885 [% END #/IF !noissues %]
887 [% IF ( noissues ) %]
888 [% IF ( Koha.Preference('OnSiteCheckouts') && Koha.Preference('OnSiteCheckoutsForce') ) %]
889 <div class="col-sm-6">
894 <div class="col-sm-6">
897 [% IF ( noissues ) %]
898 [% IF ( Koha.Preference('OnSiteCheckouts') && Koha.Preference('OnSiteCheckoutsForce') ) %]
899 <div id="circmessages" class="circmessage attention">
901 <h4>Checking out to [% INCLUDE 'patron-title.inc' %]</h4>
902 <div id="circmessages" class="circmessage warning">
906 [% IF ( Koha.Preference('OnSiteCheckouts') && Koha.Preference('OnSiteCheckoutsForce') ) %]
907 <span class="circ-hlt">Only on-site checkouts are allowed</span>
911 <div id="circmessages" class="circmessage attention">
914 [% INCLUDE 'patron_messages.inc' %]
916 </div> <!-- /#circmessages -->
917 </div> <!-- /div or div.col-sm-6 -->
918 </div> <!-- /.row -->
920 [% INCLUDE 'patron-detail-tabs.inc' patronpage = "circ" %]
922 [% ELSIF borrowernumber # IF patron %]
923 <div class="dialog message">Patron not found. <a href="/cgi-bin/koha/members/members-home.pl">Return to search</a></div>
924 [% END # /IF patron %]
926 </div> <!-- /.col-sm-10.col-sm-push-2 -->
928 [% IF Koha.Preference('CircSidebar') %]
929 [% IF not( borrowernumber and patron ) %]
930 <div class="col-sm-2 col-sm-pull-10">
932 [% INCLUDE 'circ-nav.inc' %]
934 </div> <!-- /.col-sm-2.col-sm-pull-10 -->
938 [% IF borrowernumber and patron %]
939 <div class="col-sm-2 col-sm-pull-10">
941 [% INCLUDE 'circ-menu.inc' %]
943 </div> <!-- /.col-sm-2 col-sm-pull-10 -->
946 </div> <!-- /.row -->
949 [% IF Koha.Preference('ClaimReturnedLostValue') || Koha.Preference('BundleLostValue') %]
950 [% INCLUDE 'modals/resolve_return_claim.inc' %]
954 <div id="barcodeSubmittedModal" class="modal fade" tabindex="-1" role="dialog" aria-labelledby="barcodeSubmittedModalLabel" aria-hidden="true">
955 <div class="modal-dialog">
956 <div class="modal-content">
957 <div class="modal-header">
958 <h3 id="barcodeSubmittedModalLabel">Barcode submitted</h3>
960 <div class="modal-body">
961 <p>You have already submitted a barcode, please wait for the checkout to process...</p>
963 </div> <!-- /.modal-content -->
964 </div> <!-- /.modal-dialog -->
965 </div> <!-- /#barcodeSubmittedModal -->
967 [% IF waiting_holds %]
968 <div id="circ-warnwaitingholds-modal" class="modal fade audio-alert-action block">
969 <div class="modal-dialog">
970 <div class="modal-content">
971 <div class="modal-header">
972 <h3>This patron has waiting holds</h3>
974 <div class="modal-body">
977 This patron has waiting holds that are available for checkout
981 <div class="modal-footer">
982 <button type="button" class="btn btn-primary" data-dismiss="modal">Ok</button>
989 [% MACRO jsinclude BLOCK %]
990 [% INCLUDE 'datatables.inc' %]
991 [% INCLUDE 'columns_settings.inc' %]
992 [% INCLUDE 'select2.inc' %]
993 [% Asset.js("lib/jquery/plugins/rowGroup/dataTables.rowGroup.min.js") | $raw %]
994 [% PROCESS 'modal-claims.inc' %]
995 [% PROCESS 'modal-claims-js' %]
996 [% INCLUDE 'js-date-format.inc' %]
999 /* Set some variable needed in circulation.js */
1000 const LoadCheckoutsTableDelay = [% Koha.Preference('LoadCheckoutsTableDelay') || 0 | html %];
1001 var logged_in_user_borrowernumber = "[% logged_in_user.borrowernumber | html %]";
1002 var ClaimReturnedLostValue = "[% Koha.Preference('ClaimReturnedLostValue') | html %]";
1003 var ClaimReturnedChargeFee = "[% Koha.Preference('ClaimReturnedChargeFee') | html %]";
1004 var UnseenRenewals = "[% Koha.Preference('UnseenRenewals') | html %]";
1005 var ClaimReturnedWarningThreshold = "[% Koha.Preference('ClaimReturnedWarningThreshold') | html %]";
1006 var interface = "[% interface | html %]";
1007 var theme = "[% theme | html %]";
1008 var borrowernumber = "[% patron.borrowernumber | html %]";
1009 var branchcode = "[% branch | html %]";
1010 var exports_enabled = "[% Koha.Preference('ExportCircHistory') | html %]";
1011 var AllowRenewalLimitOverride = [% (CAN_user_circulate_override_renewals && Koha.Preference('AllowRenewalLimitOverride') )? 1: 0 | html %];
1012 var AllowRenewalOnHoldOverride = [% (CAN_user_circulate_override_renewals && Koha.Preference('AllowRenewalOnHoldOverride') )? 1: 0 | html %];
1013 var AllowCirculate = [% (CAN_user_circulate_circulate_remaining_permissions)? 1 : 0 | html %];
1014 var script = "circulation";
1015 var relatives_borrowernumbers = new Array();
1016 [% FOREACH b IN relatives_borrowernumbers %]
1017 relatives_borrowernumbers.push("[% b | html %]");
1019 var SuspendHoldsIntranet = [% ( Koha.Preference('SuspendHoldsIntranet') ) ? 1 : 0 | html %];
1021 [% Asset.js("js/pages/circulation.js") | $raw %]
1022 [% Asset.js("js/checkouts.js") | $raw %]
1023 [% IF Koha.Preference('ClaimReturnedLostValue') || Koha.Preference('BundleLostValue') %]
1024 [% Asset.js("js/resolve_claim_modal.js") | $raw %]
1026 [% Asset.js("js/holds.js") | $raw %]
1027 [% INCLUDE 'calendar.inc' %]
1029 table_settings_issues_table = [% TablesSettings.GetTableSettings( 'circ', 'circulation', 'issues-table', 'json' ) | $raw %]
1030 table_settings_relatives_issues_table = [% TablesSettings.GetTableSettings( 'circ', 'circulation', 'relatives-issues-table', 'json' ) | $raw %]
1031 table_settings_holds_table = [% TablesSettings.GetTableSettings( 'circ', 'circulation', 'holds-table', 'json' ) | $raw %]
1033 [% IF borrowernumber and patron %]
1034 if( Cookies.get("holdfor") != [% patron.borrowernumber | html %]){
1035 Cookies.remove("holdfor", { path: '/', SameSite: 'Lax' });
1038 Cookies.remove("holdfor", { path: '/', SameSite: 'Lax' });
1041 [% UNLESS ( patron.borrowernumber ) %]window.onload=function(){ $('#findborrower').focus(); };[% END %]
1044 function toggle_onsite_checkout(){
1045 const duedatespec = document.querySelector("#duedatespec");
1047 const duedatespec_fp = duedatespec._flatpickr;
1048 if ( $("#onsite_checkout").prop('checked') ) {
1049 duedatespec_fp.setDate("[% today_due_date_and_time | $KohaDates dateformat => 'iso', with_hours => 1 %]");
1051 duedatespec_fp.setDate("");
1056 function Dopop(link) {
1057 var newin = window.open(link, 'popup', 'width=600,height=400,resizable=1,toolbar=0,scrollbars=1,top');
1059 $(document).ready(function() {
1060 [% IF waiting_holds %]
1061 $('#circ-warnwaitingholds-modal .btn-primary').on('click',function() {
1062 $('#mainform').submit();
1065 var waiting_holds_barcodes = new Array();
1066 [% FOREACH wh IN waiting_holds %]
1067 waiting_holds_barcodes.push("[% wh.item.barcode | html %]");
1069 $("#mainform").on('submit', function(){
1070 if( $("#checkout_confirmed").length > 0 ){
1073 if ( waiting_holds_barcodes.includes($('#barcode').val().trim()) ) {
1076 $('#circ-warnwaitingholds-modal').modal();
1080 $("#circ-warnwaitingholds-modal").on('hidden.bs.modal',function(){
1081 $("#mainform").append('<input type="hidden" id="checkout_confirmed" value=1>').submit();
1085 $('#mainform').on('submit',function() {
1086 if ($("#barcode") && $("#barcode").val()) {
1087 $('#barcode').on('keypress',function(event) {
1088 $('#barcodeSubmittedModal').modal();
1089 event.preventDefault(); }
1094 // listen submit to trigger qslip on empty checkout
1095 $('#mainform').bind('submit',function() {
1096 if ($('#barcode').val() == '') {
1097 [% IF ( CircAutoPrintQuickSlip == 'clear' ) %]
1098 window.location='/cgi-bin/koha/circ/circulation.pl';
1101 window.open("/cgi-bin/koha/members/printslip.pl?borrowernumber=" + borrowernumber + "&print=issue[% CircAutoPrintQuickSlip | html %]", "printwindow");
1106 toggle_onsite_checkout();
1107 $("#onsite_checkout").click(function(){
1108 toggle_onsite_checkout();
1112 [% IF !override_high_holds %]
1113 $("input[name=duedatespec]:hidden").val('[% HIGHHOLDS.returndate | html %]');
1114 if ('[% duedatespec | html %]' === '') {
1115 $("input[name=restoreduedatespec]:hidden").val('highholds_empty');
1117 $("input[name=restoreduedatespec]:hidden").val('[% duedatespec | html %]');
1121 $("#override_high_holds_tmp").on( 'change', function() {
1122 if ( this.checked ) {
1123 $("input[name=duedatespec]:hidden").val('');
1129 [% INCLUDE 'str/members-menu.inc' %]
1130 [% Asset.js("js/members-menu.js") | $raw %]
1131 [% Asset.js("js/recalls.js") | $raw %]
1134 [% INCLUDE 'intranet-bottom.inc' %]
1136 [% BLOCK circulation_rule_criteria %]
1140 [% IF rule.itemtype %]
1141 [% ItemTypes.GetDescription( rule.itemtype ) | html %]
1143 <i>All item types</i>
1148 [% IF rule.categorycode %]
1149 [% Categories.GetName( rule.categorycode ) | html %]
1151 <i>All patron categories</i>
1156 [% IF rule.branchcode %]
1157 [% Branches.GetName( rule.branchcode ) | html %]
1159 <i>All libraries</i>