Bug 20688: Add accesskeys to hold modals
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / circ / returns.tt
1 [% USE raw %]
2 [% USE Asset %]
3 [% USE KohaDates %]
4 [% USE Branches %]
5 [% USE Koha %]
6 [% USE ItemTypes %]
7 [% USE AuthorisedValues %]
8 [% USE TablesSettings %]
9 [% PROCESS 'member-display-address-style.inc' %]
10 [% SET footerjs = 1 %]
11 [% BLOCK display_bormessagepref %]
12     [% IF ( bormessagepref ) %]
13         <li class="notification_method">Patron notification:
14             [% FOREACH mtt IN bormessagepref.keys %]
15                 [%~ IF ( mtt == 'email' ) %] Email[% END ~%]
16                 [%~ IF ( mtt == 'phone' ) %] Phone[% END ~%]
17                 [%~ IF ( mtt == 'sms' ) %] SMS[% END ~%]
18                 [%~ UNLESS loop.last %], [% ELSE %].[% END ~%]
19             [% END %]
20         </li>
21            [% ELSE %]
22         <li class="notification_method none">Patron is not notified.</li>
23     [% END %]
24 [% END %]
25
26 [% BLOCK display_holdpatron_address %]
27     [% PROCESS 'display-address-style' %]
28 [% END %]
29
30 [% INCLUDE 'doc-head-open.inc' %]
31 <title>Check in [% title | html %] &rsaquo; Circulation &rsaquo; Koha</title>
32 [% INCLUDE 'doc-head-close.inc' %]
33 </head>
34
35 <body id="circ_returns" class="circ">
36     <span class="audio-alert-success"></span>
37
38     [% INCLUDE 'header.inc' %]
39     [% INCLUDE 'checkin-search.inc' %]
40
41     <nav id="breadcrumbs" aria-label="Breadcrumb" class="breadcrumb">
42         <ol>
43             <li>
44                 <a href="/cgi-bin/koha/mainpage.pl">Home</a>
45             </li>
46             <li>
47                 <a href="/cgi-bin/koha/circ/circulation-home.pl">Circulation</a>
48             </li>
49             <li>
50                 <a href="#" aria-current="page">
51                     Check in
52                 </a>
53             </li>
54         </ol>
55     </nav>
56
57     <div class="main container-fluid">
58         <div class="row">
59             <div class="col-sm-12">
60                 <main>
61                     <div class="row">
62
63                         [% IF Koha.Preference('CircSidebar') %]
64                             <div class="col-sm-10 col-sm-push-2">
65                         [% ELSE %]
66                             <div class="col-md-10 col-md-offset-1 col-lg-8 col-lg-offset-2">
67                         [% END %]
68
69                         [% BLOCK all_checkin_messages %]
70                             [% IF hold_auto_filled %]
71                                 <div class="dialog message hold-auto-filled">
72                                     [% IF ( reservenotes ) %]
73                                         <h4>Notes: [% reservenotes | html %]</h4>
74                                     [% END %]
75                                     <h3>Hold filled for:</h3>
76                                     <ul>
77                                         <li>
78                                             [% INCLUDE 'patron-title.inc' patron=patron hide_patron_infos_if_needed=1 invert_name=1 %]
79                                             <span class="patron-category"> - [% patron.category.description | html %]</span>
80                                         </li>
81
82                                         [% INCLUDE display_holdpatron_address %]
83
84                                         [% IF ( patron.phone ) %]
85                                             <li>[% patron.phone | html %]</li>
86                                         [% END %]
87
88                                         [% IF ( patron.email ) %]
89                                             <li>
90                                                 [% IF ( transfertodo ) %]
91                                                     [% patron.email | html %]
92                                                 [% ELSE %]
93                                                     <a id="boremail" href="mailto:[% patron.email | html %]">[% patron.email | html %]</a>
94                                                 [% END %]
95                                             </li>
96                                         [% END %]
97
98                                         [% UNLESS ( transfertodo) %]
99                                             [% INCLUDE display_bormessagepref %]
100                                         [% END %]
101
102                                         [% IF ( patron.is_debarred ) %]
103                                             <li class="error">Patron is RESTRICTED</li>
104                                         [% END %]
105
106                                         [% IF ( patron.gonenoaddress ) %]
107                                             <li class="error">Patron's address is in doubt</li>
108                                         [% END %]
109                                     </ul>
110
111                                     [% IF ( transfertodo ) %]
112                                         <h4><strong>Transfer to:</strong> [% Branches.GetName( destbranch ) | html %]</h4>
113                                     [% ELSE %]
114                                         <h4><strong>Hold at</strong> [% Branches.GetName( destbranch ) | html %]</h4>
115                                     [% END %]
116
117                                     <a href="#" class="btn btn-default print print-slip">
118                                         <i class="fa fa-print"></i> Print
119                                     </a>
120                                 </div> <!-- /.hold-auto-filled -->
121                             [% END # /IF hold_auto_filled %]
122
123                             [% IF ( trigger ) %]
124                                  <div id="transfer-trigger" class="dialog message">
125                                      <h3>Reason for transfer</h3>
126                                      <p>
127                                          [%- SWITCH trigger -%]
128                                              [%- CASE 'Manual' -%]Manual
129                                              [%- CASE 'StockrotationAdvance' -%]Stock rotation advance
130                                              [%- CASE 'StockrotationRepatriation' -%]Stock rotation repatriation
131                                              [%- CASE 'ReturnToHome' -%]Return to home library
132                                              [%- CASE 'ReturnToHolding' -%]Return to holding library
133                                              [%- CASE 'RotatingCollection' -%]Rotating collection
134                                              [%- CASE 'Reserve' -%]Reserve
135                                              [%- CASE 'LostReserve' -%]Lost reserve
136                                              [%- CASE 'CancelReserve' -%]Cancelled reserve
137                                              [%- CASE 'TransferCancellation' -%]Transfer was cancelled whilst in transit
138                                          [%- END -%]
139                                      </p>
140                                  </div>
141                             [% END %]
142
143                             [% IF privacy == 2 AND NOT Koha.Preference('AnonymousPatron') %]
144                                 <div class="dialog alert">
145                                     <strong>Error:</strong>
146                                     This patron has requested their circulation history be anonymized on check-in, but the AnonymousPatron system preference is empty or incorrect.
147                                 </div>
148                             [% ELSIF NOT Koha.Preference('AnonymousPatron') AND Koha.Preference('OPACPrivacy') %]
149                                 <div class="dialog alert">
150                                     <strong>Error:</strong>
151                                     The system preference OPACPrivacy is set but AnonymousPatron is not! Please correct this before continuing circulation.
152                                 </div>
153                             [% END %]
154
155                             [% IF additional_materials && !needs_confirm && !multiple_confirmed %]
156                                 <div class="dialog message">
157                                     Note about the accompanying materials: [% additional_materials | html %]
158                                 </div>
159                             [% END %]
160
161                             [% IF ( collectionItemNeedsTransferred ) %]
162                                  <div id="rotating-collection" class="dialog message">
163                                     <h3>Please transfer item to: [% Branches.GetName( collectionBranch ) | html %]</h3>
164                                     <p><a href="/cgi-bin/koha/catalogue/detail.pl?type=intra&amp;biblionumber=[% itembiblionumber | uri %]">[% item.barcode | html %]: [% title | html %]</a></p>
165                                     <p>This item is part of a rotating collection.</p>
166                                     <p><button type="button" class="openWin" data-url="transfer-slip.pl?transferitem=[% itemnumber | uri %]&amp;branchcode=[% collectionBranch | uri %]&amp;op=slip"><i class="fa fa-print"></i> Print slip</button></p>
167                                 </div>
168                             [% END %]
169
170                             <!-- Patron has added an issue note -->
171                             [% IF ( issue.note) %]
172                                 <div class="dialog message">
173                                     <h1>Patron note</h1>
174                                     <p>[% issue.notedate | $KohaDates %]</p>
175                                     <p><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% itembiblionumber | uri %]"> [% title | html %]</a> [% author | html %]</p>
176                                     <p>[% issue.note | html %]</p>
177                                 </div>
178                             [% END %]
179
180                             <!-- Patron has fines -->
181                             [% IF ( fines ) %]
182                                 <div class="dialog alert">
183                                     <h3>Patron has outstanding fines of [% fines | html %].</h3>
184                                     <p><a href="/cgi-bin/koha/members/pay.pl?borrowernumber=[% fineborrowernumber | uri %]">Make payment</a>.</p>
185                                 </div>
186                             [% END %]
187
188                             <!-- Item has return claim(s) -->
189                             [% IF ( ReturnClaims ) %]
190                                 <div class="dialog alert return-claim">
191                                     <h3>This item has been claimed as returned by:</h3>
192                                     <ul>
193                                         [% FOREACH rc IN ReturnClaims %]
194                                             <li>
195                                                 [% INCLUDE 'patron-title.inc' patron=rc.patron hide_patron_infos_if_needed=1 invert_name=1 %]
196                                             </li>
197                                         [% END %]
198                                     </ul>
199                                 </div>
200                             [% END %]
201
202                             <!-- Patron has waiting holds -->
203                             [% IF ( waiting_holds ) %]
204                                 <div id="awaiting-pickup" class="dialog message">
205                                     <h3>[% INCLUDE 'patron-title.inc' patron=issue.patron hide_patron_infos_if_needed=1 invert_name=1 %] has [% waiting_holds | html %] hold(s) waiting for pickup.</h3>
206                                     <p><a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=[% holdsborrowernumber | uri %]">Check out to this patron</a>.</p>
207                                 </div>
208                             [% END %]
209
210                             <!-- Patron is restricted and checkin was backdated -->
211                             [% IF return_date_was_overriden && issue.patron.is_debarred %]
212                                 <div id="restricted_backdated" class="dialog message">
213                                     <h3>
214                                         [% INCLUDE 'patron-title.inc' patron=issue.patron hide_patron_infos_if_needed=1 invert_name=1 %]
215                                         is restricted. Please verify this patron should still be restricted.
216                                     </h3>
217                                 </div>
218                             [% END %]
219
220
221                             [% IF ( errmsgloop ) %]
222                                 <div class="dialog alert audio-alert-warning">
223                                     <h3>Check in message</h3>
224                                     [% IF itembiblionumber %]
225                                         <p><a href="/cgi-bin/koha/catalogue/detail.pl?type=intra&amp;biblionumber=[% itembiblionumber | uri %]">[% item.barcode | html %]: [% title | html %]</a></p>
226                                     [% END %]
227                                     [% FOREACH errmsgloo IN errmsgloop %]
228                                         [% IF ( errmsgloo.NotForLoanStatusUpdated ) %]
229                                             <p class="problem ret_nflupdate">
230                                                 Not for loan status updated.
231                                                 <br />Old value:
232                                                 [% IF errmsgloo.NotForLoanStatusUpdated.from %]
233                                                     <span class="ret_updatedfrom">
234                                                         [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.notforloan', authorised_value => errmsgloo.NotForLoanStatusUpdated.from ) | html %].
235                                                     </span>
236                                                 [% ELSE %]
237                                                     Available for loan.
238                                                 [% END %]
239                                                 <br />New value:
240                                                 [% IF errmsgloo.NotForLoanStatusUpdated.to %]
241                                                     <span class="ret_updatedto">
242                                                         [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.notforloan', authorised_value => errmsgloo.NotForLoanStatusUpdated.to ) | html %].
243                                                     </span>
244                                                 [% ELSE %]
245                                                     Available for loan.
246                                                 [% END %]
247                                             </p>
248                                         [% END %]
249                                         [% IF ( errmsgloo.ItemLocationUpdated ) %]
250                                              <p class="problem ret_location_update">
251                                                  Item shelving location updated.
252                                                 <br />Old value:
253                                                 [% IF errmsgloo.ItemLocationUpdated.from %]
254                                                     [% SET av_description = AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.location', authorised_value => errmsgloo.ItemLocationUpdated.from ) %]
255                                                     [% IF errmsgloo.ItemLocationUpdated.from == '' %]
256                                                         empty
257                                                     [% ELSIF av_description == '' %]
258                                                         [% errmsgloo.ItemLocationUpdated.from | html %] (No description available)
259                                                     [% ELSE %]
260                                                         [% av_description | html %]
261                                                     [% END %]
262                                                 [% ELSE %]
263                                                     "Blank"
264                                                 [% END %]
265                                                 <br />New value:
266                                                 [% IF errmsgloo.ItemLocationUpdated.to %]
267                                                     [% SET av_description = AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.location', authorised_value => errmsgloo.ItemLocationUpdated.to ) %]
268                                                     [% IF errmsgloo.ItemLocationUpdated.to == '' %]
269                                                         empty
270                                                     [% ELSIF av_description == '' %]
271                                                         [% errmsgloo.ItemLocationUpdated.to | html %] (Not an authorized value)
272                                                     [% ELSE %]
273                                                         [% av_description | html %]
274                                                     [% END %]
275                                                 [% ELSE %]
276                                                     "Blank"
277                                                 [% END %]
278                                              </p>
279                                         [% END %]
280                                         [% IF ( errmsgloo.badbarcode ) %]
281                                             <p class="problem ret_badbarcode">No item with barcode: [% errmsgloo.msg | html %]</p>
282                                         [% END %]
283                                         [% IF ( errmsgloo.ispermanent ) %]
284                                             <p class="problem ret_ispermenant">Please return item to: [% Branches.GetName( errmsgloo.msg ) | html %]</p>
285                                         [% END %]
286                                         [% IF ( errmsgloo.notissued ) %]
287                                             <p class="problem ret_notissued">Not checked out.</p>
288                                         [% END %]
289                                         [% IF ( errmsgloo.localuse) %]
290                                             <p class="problem ret_localuse">Local use recorded</p>
291                                         [% END %]
292                                         [% IF ( errmsgloo.transferred ) %]
293                                             <p class="problem ret_transferred">Item received from [% Branches.GetName( errmsgloo.transferred ) | html %]</p>
294                                         [% END %]
295                                         [% IF ( errmsgloo.waslost ) %]
296                                             [% IF Koha.Preference('BlockReturnOfLostItems') %]
297                                                 <p class="problem ret_blocked">Item is lost, cannot be checked in.</p>
298                                             [% ELSE %]
299                                                 <p class="problem ret_checkedin">Item was lost, now found.</p>
300                                             [% END %]
301                                             [% IF LostItemFeeRefunded and not Koha.Preference('BlockReturnOfLostItems') %]
302                                                 <p class="problem ret_refund">A refund has been applied to the borrowing patron's account.</p>
303                                             [% ELSIF LostItemFeeCharged and not Koha.Preference('BlockReturnOfLostItems') %]
304                                                 <p class="problem ret_charged">A refund for the lost item charge has been applied to the borrowing patron's account, and new overdue charge has been calculated and applied.</p>
305                                             [% ELSIF LostItemFeeRestored and not Koha.Preference('BlockReturnOfLostItems') %]
306                                                 <p class="problem ret_restored">A refund for the lost item charge has been applied to the borrowing patron's account and if an overdue fine was forgiven when the item was marked as lost, it has been reverted.</p>
307                                             [% ELSIF Koha.Preference('BlockReturnOfLostItems') %]
308                                                <h5>Cannot check in</h5>
309                                                <p><strong>NOT CHECKED IN</strong></p>
310                                             [% ELSE %]
311                                                 <p class="problem ret_feeremains">Any lost item fees for this item will remain on the patron's account.</p>
312                                             [% END %]
313                                         [% END %]
314                                         [% IF ( errmsgloo.withdrawn ) %]
315                                             [% IF Koha.Preference('BlockReturnOfWithdrawnItems') %]
316                                                <h5>Cannot check in</h5>
317                                                <p><strong>NOT CHECKED IN</strong></p>
318                                             [% END %]
319                                            <p class="problem ret_withdrawn">
320                                                <span>Item has been withdrawn</span>
321                                                [% item_withdrawn_lib = AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.withdrawn', authorised_value => item.withdrawn ) %]
322                                                [% IF (item_withdrawn_lib) %]<span class="ci-withdrawn">([% item_withdrawn_lib | html %])</span>[% END %]
323                                            </p>
324                                         [% END %]
325                                         [% IF ( errmsgloo.debarred ) %]
326                                             <p class="problem ret_debarred"><a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=[% errmsgloo.debarborrowernumber | uri %]">[% errmsgloo.debarname | html %]([% errmsgloo.debarcardnumber | html %])</a> is now debarred until [% errmsgloo.debarred | $KohaDates %].</p>
327                                         [% END %]
328                                         [% IF ( errmsgloo.prevdebarred ) %]
329                                             <p class="problem ret_prevdebarred"><strong>Reminder: </strong>Patron was earlier restricted until [% errmsgloo.prevdebarred | $KohaDates %].</p>
330                                         [% END %]
331                                         [% IF ( errmsgloo.foreverdebarred ) %]
332                                             <p class="problem ret_foreverdebarred"><strong>Reminder: </strong>Patron has an indefinite restriction.</p>
333                                         [% END %]
334                                         [% IF errmsgloo.data_corrupted %]
335                                             <p class="problem ret_datacorrupt">The item has not been checked in due to a configuration issue in your system. You must ask an administrator to take a look at the <a href="/cgi-bin/koha/about.pl#sysinfo">about page</a> and correct all errors shown on the "System information" tab</p>
336                                         [% END %]
337                                     [% END # /FOREACH errmsgloo %]
338                                 </div> <!-- /.dialog.dialog-alert -->
339                             [% END #/IF errmsgloop %]
340
341                             [% IF ( checkinmsg ) %]
342                                 [% IF ( checkinmsgtype == 'alert' ) %]
343                                     <div class="dialog alert">
344                                 [% ELSE %]
345                                     <div class="dialog message">
346                                 [% END %]
347                                         <p class="ret_checkinmsg">[% checkinmsg | html_line_break %]</p>
348                                     </div>
349                             [% END # /IF checkinmsg %]
350                         [% END # /BLOCK all_checkin_messages %]
351
352                         [% IF needs_confirm %]
353                             <div id="circ-needsconfirmation-modal" class="modal fade audio-alert-action block">
354                                 <div class="modal-dialog">
355                                     <div class="modal-content">
356                                         <div class="modal-header">
357                                             <h3>Please confirm checkin</h3>
358                                         </div>
359                                         <div class="modal-body">
360                                             <ul>
361                                                 <li>
362                                                     Please confirm that the accompanying materials are present: <strong>[% additional_materials | html %]</strong>
363                                                 </li>
364                                             </ul>
365                                         </div>
366                                         <div class="modal-footer">
367                                             <form method="post" action="/cgi-bin/koha/circ/returns.pl" autocomplete="off">
368                                                 <input type="hidden" name="barcode" value="[% item.barcode | html %]" />
369                                                 <input type="hidden" name="multiple_confirm" value="1" />
370                                                 [% FOREACH inputloo IN inputloop %]
371                                                     <input type="hidden" name="ri-[% inputloo.counter | html %]" value="[% inputloo.barcode | html %]" />
372                                                     <input type="hidden" name="dd-[% inputloo.counter | html %]" value="[% inputloo.duedate | html %]" />
373                                                     <input type="hidden" name="bn-[% inputloo.counter | html %]" value="[% inputloo.borrowernumber | html %]" />
374                                                 [% END %]
375                                                 <button type="submit" class="approve" accesskey="y"><i class="fa fa-check"></i> Yes, checkin (Y)</button>
376                                             </form>
377                                             <button type="button" data-dismiss="modal" class="deny" accesskey="n"><i class="fa fa-times"></i> No, don't checkin (N)</button>
378                                         </div>
379                                     </div>
380                                 </div>
381                             </div>
382                         [% END %]
383
384                         [% IF wrongbranch %]
385                             <div id="wrong-branch-modal" class="modal fade audio-alert-action block">
386                                 <div class="modal-dialog">
387                                     <div class="modal-content">
388                                         <form method="post" action="returns.pl" name="mainform" id="mainform">
389                                             <div class="modal-header">
390                                                 <h3>
391                                                     Cannot check in
392                                                 </h3>
393                                             </div>
394                                             <div class="modal-body">
395                                                 <p>
396                                                     <a href="/cgi-bin/koha/catalogue/detail.pl?type=intra&amp;biblionumber=[% itembiblionumber | uri %]">
397                                                         [% item.barcode | html %]: [% title | html %]
398                                                     </a>
399                                                 </p>
400                                                 <p>
401                                                     <strong>
402                                                         NOT CHECKED IN
403                                                     </strong>
404                                                 </p>
405                                                 <p>
406                                                     This item must be checked in at following library:
407                                                     <strong>
408                                                         [% Branches.GetName( rightbranch ) | html %]
409                                                     </strong>
410                                                 </p>
411                                                 [% INCLUDE all_checkin_messages %]
412                                             </div> <!-- /.modal-body -->
413                                             <div class="modal-footer">
414                                                 <button type="button" data-dismiss="modal" class="btn btn-default approve"><i class="fa fa-check"></i> OK</button>
415                                             </div>
416                                         </form> <!-- /#mainform -->
417                                     </div> <!-- /.modal-content -->
418                                 </div> <!-- /.modal-dialog -->
419                             </div> <!-- /#wrong-branch-modal -->
420                         [% END # /IF wrongbranch %]
421
422                         <!-- case of a mistake in transfer loop -->
423                         [% UNLESS ( hold_auto_filled && diffbranch ) %]
424                             [% IF WrongTransfer && !transfertodo %]
425                                 [% IF Koha.Preference('TransfersBlockCirc') %]
426                                     <div id="wrong-transfer-modal" class="modal fade audio-alert-action block">
427                                 [% ELSE %]
428                                     <div id="wrong-transfer-modal" class="modal fade audio-alert-action noblock">
429                                 [% END %]
430                                     <div class="modal-dialog">
431                                         <div class="modal-content">
432                                             <form method="post" action="returns.pl" name="wrongtransferform" id="wrongtransferform">
433                                                 <input type="hidden" name="return_date_override" value="[% return_date_override | html %]" />
434                                                 <input type="hidden" name="return_date_override_remember" value="[% return_date_override_remember | html %]" />
435                                                 <input type="hidden" name="itemnumber" value="[% itemnumber | html %]" />
436                                                 <input type="hidden" name="transit" value="[% NewTransfer | html %]" />
437                                                 [% FOREACH inputloo IN inputloop %]
438                                                     <input type="hidden" name="ri-[% inputloo.counter | html %]" value="[% inputloo.barcode | html %]" />
439                                                     <input type="hidden" name="dd-[% inputloo.counter | html %]" value="[% inputloo.duedate | html %]" />
440                                                     <input type="hidden" name="bn-[% inputloo.counter | html %]" value="[% inputloo.borrowernumber | html %]" />
441                                                 [% END %]
442
443                                                 <div class="modal-header">
444                                                     <h3>
445                                                         Wrong transfer detected, please return item to: [% Branches.GetName( TransferWaitingAt ) | html %]
446                                                     </h3>
447                                                 </div>
448
449                                                 <div class="modal-body">
450                                                     <p>
451                                                         <a href="/cgi-bin/koha/catalogue/detail.pl?type=intra&amp;biblionumber=[% itembiblionumber | uri %]">[% item.barcode | html %]: [% title | html %]</a>
452                                                     </p>
453
454                                                     [% INCLUDE all_checkin_messages %]
455                                                 </div>
456
457                                                 <div class="modal-footer">
458                                                     <!-- CONFIRM -->
459                                                     <button class="btn btn-default approve" type="submit"><i class="fa fa-check"></i> OK</button>
460                                                     <!-- PRINT SLIP -->
461                                                     <button type="button" data-dismiss="modal" class="btn btn-default submit openWin" data-transfer="[% NewTransfer | html %]" data-url="transfer-slip.pl?transferitem=[% itemnumber | uri %]&amp;&amp;branchcode=[% TransferWaitingAt | uri %]&amp;op=slip"><i class="fa fa-print"></i> Print transfer slip</button>
462                                                     <!-- CANCEL TRANSFER -->
463                                                     <button type="button" data-dismiss="modal" class="btn btn-default deny cancel"><i class="fa fa-times"></i> Cancel transfer</button>
464                                                 </div> <!-- /.modal-footer -->
465                                             </form> <!-- /wrongtransferform -->
466                                         </div> <!-- /.modal-content -->
467                                     </div> <!-- /.modal-dialog -->
468                                 </div> <!-- /#wrong-transfer-modal -->
469                             [% END # /IF WrongTransfer && !transfertodo %]
470                         [% END # /UNLESS hold_auto_filled && diffbranch %]
471
472                         [% IF ( found ) %]
473                             [% IF ( waiting ) %]
474                                 <div id="hold-found1" class="modal fade audio-alert-action block">
475                                     <div class="modal-dialog">
476                                         <div class="modal-content">
477                                             <form method="post" action="returns.pl" class="confirm">
478                                                 <div class="modal-header">
479                                                     <h3>
480                                                         Hold found (item is already waiting):
481                                                         <br/>
482                                                         <a href="/cgi-bin/koha/catalogue/detail.pl?type=intra&amp;biblionumber=[% itembiblionumber | uri %]">[% title | html %]</a>
483                                                         <div class="hold-found-barcode">
484                                                             <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% itembiblionumber | uri %]&amp;itemnumber=[% itemnumber | uri %]">[% item.barcode | html %]</a>
485                                                         </div>
486                                                     </h3>
487                                                 </div>
488
489                                                 <div class="modal-body">
490                                                     [% IF ( reservenotes ) %]
491                                                         <h4>Notes: [% reservenotes | html %]</h4>
492                                                     [% END %]
493
494                                                     <h4>Hold for:</h4>
495                                                     <ul>
496                                                         <li>
497                                                             [% INCLUDE 'patron-title.inc' patron=patron hide_patron_infos_if_needed=1 invert_name=1 link_to="circulation_reserves" %]
498                                                             <span class="patron-category"> - [% patron.category.description | html %]</span>
499                                                         </li>
500                                                         [% INCLUDE display_holdpatron_address %]
501                                                         [% IF ( patron.phone ) %]
502                                                             <li> [% patron.phone | html %]</li>
503                                                         [% END %]
504
505                                                         [% IF ( patron.email ) %]
506                                                             <li><a id="boremail" href="mailto:[% patron.email | html %]">[% patron.email | html %]</a></li>
507                                                         [% END %]
508
509                                                         [% IF ( patron.is_debarred ) %]
510                                                             <li class="error">Patron is RESTRICTED</li>
511                                                         [% END %]
512
513                                                         [% IF ( patron.gonenoaddress ) %]
514                                                             <li class="error">Patron's address is in doubt</li>
515                                                         [% END %]
516                                                     </ul>
517
518                                                     [% IF ( transfertodo ) %]
519                                                         <h4><strong>Transfer to:</strong> [% Branches.GetName( destbranch ) | html %]</h4>
520                                                     [% ELSE %]
521                                                         <h4><strong>Hold at</strong> [% Branches.GetName( destbranch ) | html %]</h4>
522                                                     [% END %]
523
524                                                     [% FOREACH inputloo IN inputloop %]
525                                                         <input type="hidden" name="ri-[% inputloo.counter | html %]" value="[% inputloo.barcode | html %]" />
526                                                         <input type="hidden" name="dd-[% inputloo.counter | html %]" value="[% inputloo.duedate | html %]" />
527                                                         <input type="hidden" name="bn-[% inputloo.counter | html %]" value="[% inputloo.borrowernumber | html %]" />
528                                                     [% END %]
529
530                                                     <input type="hidden" name="itemnumber" value="[% itemnumber | html %]" />
531                                                     <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
532                                                     <input type="hidden" name="biblionumber" value="[% itembiblionumber | html %]" />
533                                                     <input type="hidden" name="reserve_id" value="[% reserve_id | html %]" />
534                                                     <input type="hidden" name="diffBranch" value="[% destbranch | html %]" />
535                                                     <input type="hidden" name="exemptfine" value="[% exemptfine | html %]" />
536                                                     <input type="hidden" name="dropboxmode" value="[% dropboxmode | html %]" />
537                                                     <input type="hidden" name="forgivemanualholdsexpire" value="[% forgivemanualholdsexpire | html %]" />
538
539                                                     <input type="hidden" name="return_date_override" value="[% return_date_override | html %]" />
540                                                     <input type="hidden" name="return_date_override_remember" value="[% return_date_override_remember | html %]" />
541                                                     [% INCLUDE all_checkin_messages %]
542                                                 </div> <!-- /.modal-body -->
543
544                                                 <div class="modal-footer">
545                                                     <input type="hidden" name="cancel_reserve" value="0" />
546                                                     <input id="confirm-hold-barcode" type="hidden" name="barcode" value="[% barcode | html %]" />
547
548                                                     <button type="submit" class="btn btn-default approve" data-dismiss="modal" accesskey="y">
549                                                         <i class="fa fa-check"></i> Confirm hold (Y)
550                                                     </button>
551
552                                                     <input type="hidden" name="print_slip" value="0" />
553                                                     <button type="button" class="btn btn-default print" accesskey="P">
554                                                         <i class="fa fa-print"></i> Print slip and confirm (P)
555                                                     </button>
556
557                                                     <button type="button" class="btn btn-default deny cancel-hold" accesskey="X">
558                                                         <i class="fa fa-times"></i> Cancel hold (X)
559                                                     </button>
560                                                 </div> <!-- /.modal-footer -->
561                                             </form> <!-- /.confirm -->
562                                         </div> <!-- /.modal-content -->
563                                     </div> <!-- /.modal-dialog -->
564                                 </div> <!-- /#hold-found1 -->
565                             [% END # /IF waiting %]
566
567                             [% IF transfer || needstransfer %]
568                                 [% IF Koha.Preference('TransfersBlockCirc') %]
569                                     <div id="item-transfer-modal" class="modal fade audio-alert-action block">
570                                 [% ELSE %]
571                                     <div id="item-transfer-modal" class="modal fade audio-alert-action noblock">
572                                 [% END %]
573                                     <div class="modal-dialog">
574                                         <div class="modal-content">
575                                             <form method="post" action="returns.pl" name="mainform" id="mainform">
576
577                                                 <input type="hidden" name="print_slip" value="0" />
578
579                                                 <div class="modal-header">
580                                                     <h3>
581                                                         Please return this item to [% IF transfer %][% Branches.GetName( transfer ) | html %][% ELSE %][% Branches.GetName( returnbranch ) | html %][% END %]
582                                                     </h3>
583                                                 </div>
584                                                 <div class="modal-body">
585                                                     <p>
586                                                         <a href="/cgi-bin/koha/catalogue/detail.pl?type=intra&amp;biblionumber=[% itembiblionumber | uri %]">
587                                                             [% item.barcode | html %]: [% title | html %]
588                                                         </a>
589                                                     </p>
590                                                     [% IF !transfer %]
591                                                         <p>
592                                                             Transfer now?
593                                                         </p>
594                                                     [% END %]
595                                                     <input type="hidden" name="tobranch" value="[% returnbranch | html %]" />
596                                                     <input type="hidden" name="transferitem" value="[% itemnumber | html %]" />
597                                                     <input type="hidden" name="barcode" value="0" />
598                                                     <input type="hidden" name="trigger" value="[% trigger | html %]" />
599                                                     [% INCLUDE all_checkin_messages %]
600                                                 </div>
601                                                 <div class="modal-footer">
602                                                     [% IF !transfer %]
603                                                         <button type="submit" name="dotransfer" value="Yes" class="btn btn-default approve"><i class="fa fa-check"></i> Yes</button>
604                                                         <button type="button" name="dotransfer" class="btn btn-default print openWin" data-url="transfer-slip.pl?transferitem=[% itemnumber | uri %]&amp;&amp;branchcode=[% returnbranch | uri %]&amp;op=slip"><i class="fa fa-print"></i> Yes, print slip</button>
605                                                         <button type="button" data-dismiss="modal" class="btn btn-default deny" name="notransfer" value="No"><i class="fa fa-times"></i> No</button>
606                                                     [% ELSE %]
607                                                         <button type="button" data-dismiss="modal" class="btn btn-default approve"><i class="fa fa-check"></i> OK</button>
608                                                         <button type="button" data-dismiss="modal" class="btn btn-default print openWin" data-url="transfer-slip.pl?transferitem=[% itemnumber | uri %]&amp;branchcode=[% transfer | uri %]&amp;op=slip"><i class="fa fa-print"></i> Print slip</button>
609                                                     [% END %]
610                                                     <input type="hidden" name="return_date_override" value="[% return_date_override | html %]" />
611                                                     <input type="hidden" name="return_date_override_remember" value="[% return_date_override_remember | html %]" />
612                                                     <input type="hidden" name="exemptfine" value="[% exemptfine | html %]" />
613                                                     <input type="hidden" name="dropboxmode" value="[% dropboxmode | html %]" />
614                                                     <input type="hidden" name="forgivemanualholdsexpire" value="[% forgivemanualholdsexpire | html %]" />
615                                                     [% FOREACH inputloo IN inputloop %]
616                                                         <input type="hidden" name="ri-[% inputloo.counter | html %]" value="[% inputloo.barcode | html %]" />
617                                                         <input type="hidden" name="dd-[% inputloo.counter | html %]" value="[% inputloo.duedate | html %]" />
618                                                         <input type="hidden" name="bn-[% inputloo.counter | html %]" value="[% inputloo.borrowernumber | html %]" />
619                                                     [% END %]
620                                                 </div> <!-- /.modal-footer -->
621                                             </form> <!-- /#mainform -->
622                                         </div> <!-- /.modal-content -->
623                                     </div> <!-- /.modal-dialog -->
624                                 </div> <!-- /#item-transfer-modal -->
625                             [% END # /IF transfer || needstransfer %]
626
627                             <!-- case of simple return no issue or transfer but with a reservation  -->
628                             [% IF ( reserved ) %]
629                                 <!-- reserved -->
630                                 <div id="hold-found2" class="modal fade audio-alert-action block">
631                                     <div class="modal-dialog">
632                                         <div class="modal-content">
633                                             <form method="post" action="returns.pl" class="confirm">
634
635                                                 <input type="hidden" name="print_slip" value="0" />
636
637                                                 <div class="modal-header">
638                                                     <h3>
639                                                         Hold found:
640                                                         <br/>
641                                                         <a href="/cgi-bin/koha/catalogue/detail.pl?type=intra&amp;biblionumber=[% itembiblionumber | uri %]">[% title | html %]</a>
642                                                         <div class="hold-found-barcode">
643                                                             (<a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% itembiblionumber | uri %]&amp;itemnumber=[% itemnumber | uri %]">[% item.barcode | html %]</a>)
644                                                         </div>
645                                                     </h3>
646                                                 </div>
647
648                                                 <div class="modal-body">
649                                                     [% IF ( reservenotes ) %]
650                                                         <h4>Notes:</h4>
651                                                         <p>[% reservenotes | html %]</p>
652                                                         <hr />
653                                                     [% END %]
654                                                     <h5>Hold for:</h5>
655                                                     <ul>
656                                                         <li>
657                                                             [% INCLUDE 'patron-title.inc' patron=patron hide_patron_infos_if_needed=1 invert_name=1 link_to="circulation_reserves" %]
658                                                             <span class="patron-category"> - [% patron.category.description | html %]</span>
659                                                         </li>
660
661                                                         [% INCLUDE display_holdpatron_address %]
662
663                                                         [% IF ( patron.phone ) %]
664                                                             <li>[% patron.phone | html %]</li>
665                                                         [% END %]
666
667                                                         [% IF ( patron.email ) %]
668                                                             <li>
669                                                                 [% IF ( transfertodo ) %]
670                                                                     [% patron.email | html %]
671                                                                 [% ELSE %]
672                                                                     <a id="boremail" href="mailto:[% patron.email | html %]">[% patron.email | html %]</a>
673                                                                 [% END %]
674                                                             </li>
675                                                         [% END %]
676
677                                                         [% UNLESS ( transfertodo) %]
678                                                             [% INCLUDE display_bormessagepref %]
679                                                         [% END %]
680
681                                                         [% IF ( patron.is_debarred ) %]
682                                                             <li class="error">Patron is RESTRICTED</li>
683                                                         [% END %]
684
685                                                         [% IF ( patron.gonenoaddress ) %]
686                                                             <li class="error">Patron's address is in doubt</li>
687                                                         [% END %]
688                                                     </ul>
689                                                     [% IF ( transfertodo ) %]
690                                                         <h4><strong>Transfer to:</strong> [% Branches.GetName( destbranch ) | html %]</h4>
691                                                     [% ELSE %]
692                                                         <h4><strong>Hold at</strong> [% Branches.GetName( destbranch ) | html %]</h4>
693                                                     [% END %]
694
695                                                     [% FOREACH inputloo IN inputloop %]
696                                                         <input type="hidden" name="ri-[% inputloo.counter | html %]" value="[% inputloo.barcode | html %]" />
697                                                         <input type="hidden" name="dd-[% inputloo.counter | html %]" value="[% inputloo.duedate | html %]" />
698                                                         <input type="hidden" name="bn-[% inputloo.counter | html %]" value="[% inputloo.borrowernumber | html %]" />
699                                                     [% END %]
700
701                                                     <input type="hidden" name="itemnumber" value="[% itemnumber | html %]" />
702                                                     <input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" />
703                                                     <input type="hidden" name="biblionumber" value="[% itembiblionumber | html %]" />
704                                                     <input type="hidden" name="reserve_id" value="[% reserve_id | html %]" />
705                                                     <input type="hidden" name="diffBranch" value="[% destbranch | html %]" />
706                                                     <input type="hidden" name="exemptfine" value="[% exemptfine | html %]" />
707                                                     <input type="hidden" name="dropboxmode" value="[% dropboxmode | html %]" />
708                                                     <input type="hidden" name="forgivemanualholdsexpire" value="[% forgivemanualholdsexpire | html %]" />
709                                                     <input type="hidden" name="return_date_override" value="[% return_date_override | html %]" />
710                                                     <input type="hidden" name="return_date_override_remember" value="[% return_date_override_remember | html %]" />
711                                                     [% INCLUDE all_checkin_messages %]
712                                                 </div>
713
714                                                 <div class="modal-footer">
715                                                     [% IF ( transfertodo ) %]
716                                                         <button type="submit" class="btn btn-default approve" accesskey="y">
717                                                             <i class="fa fa-check"></i> Confirm hold and transfer (Y)
718                                                         </button>
719                                                         <button type="button" class="btn btn-default print" accesskey="p">
720                                                             <i class="fa fa-print"></i> Print slip, transfer, and confirm (P)
721                                                         </button>
722                                                     [% ELSE %]
723                                                         <button type="submit" class="btn btn-default approve" accesskey="y">
724                                                             <i class="fa fa-check"></i> Confirm hold (Y)
725                                                         </button>
726                                                         <button type="button" class="btn btn-default print" accesskey="p">
727                                                             <i class="fa fa-print"></i> Print slip and confirm (P)
728                                                         </button>
729                                                     [% END %]
730
731                                                     <button data-dismiss="modal" aria-hidden="true" type="submit" class="btn btn-default deny">
732                                                         <i class="fa fa-times"></i> Ignore
733                                                     </button>
734                                                 </div> <!-- /.modal-footer -->
735                                             </form> <!-- /.confirm -->
736                                         </div> <!-- /.modal-content -->
737                                     </div> <!-- /.modal-dialog -->
738                                 </div> <!-- /#hold-found2 -->
739                             [% END #/IF reserved %]
740                         [% END # /IF found %]
741
742                         <div class="static_checkin_messages">
743                             [% INCLUDE all_checkin_messages %]
744                         </div>
745
746                         <form id="checkin-form" method="post" action="/cgi-bin/koha/circ/returns.pl" autocomplete="off" >
747                             <fieldset id="circ_returns_checkin">
748                                 <div class="show_checkin_dialog" style="float:right;display:none"><button type="button" class="btn btn-default btn-sm" data-toggle="tooltip" title="Show the last checkin message"><i class="fa fa-info"></i></button></div>
749                                 <h3>Check in</h3>
750                                 <div class="row">
751                                     <div class="col-sm-6">
752                                         <div class="hint">Enter item barcode:</div>
753                                             <div class="form-control-group">
754                                                 [% IF ( exemptfine ) %]
755                                                     <input name="barcode" id="barcode" size="14" class="focus input-warning" type="text" />
756                                                 [% ELSIF ( dropboxmode ) %]
757                                                     <input name="barcode" id="barcode" size="14" class="barcode focus input-warning" />
758                                                 [% ELSE %]
759                                                     <input name="barcode" id="barcode" size="14" class="barcode focus" />
760                                                 [% END %]
761                                                 <button type="submit" class="btn btn-default">Check in</button>
762                                                 [% FOREACH inputloo IN inputloop %]
763                                                     <input type="hidden" name="ri-[% inputloo.counter | html %]" value="[% inputloo.barcode | html %]" />
764                                                     <input type="hidden" name="dd-[% inputloo.counter | html %]" value="[% inputloo.duedate | html %]" />
765                                                     <input type="hidden" name="bn-[% inputloo.counter | html %]" value="[% inputloo.borrowernumber | html %]" />
766                                                 [% END %]
767                                             </div>
768                                         <div id="show-circ-settings">
769                                             <a href="#"><i class="fa circ-settings-icon fa-caret-down"></i> Checkin settings</a>
770                                         </div>
771                                     </div>
772                                     <div class="col-sm-6">
773                                         [% IF ( exemptfine ) %]
774                                             <div id="exemptfines" class="checkin-active-setting">
775                                         [% ELSE %]
776                                             <div id="exemptfines" class="checkin-active-setting" style="display:none;">
777                                         [% END %]
778                                             <p><i class="fa fa-check"></i> Fines for returned items are forgiven.</p>
779                                         </div>
780
781                                         [% IF ( forgivemanualholdsexpire ) %]
782                                             <div id="forgivemanualholdsexpire-alert" class="checkin-active-setting">
783                                         [% ELSE %]
784                                             <div id="forgivemanualholdsexpire-alert" class="checkin-active-setting" style="display:none;">
785                                         [% END %]
786                                                 <p><i class="fa fa-check"></i> Fines are not charged for manually cancelled holds.</p>
787                                             </div>
788
789                                         [% IF ( dropboxmode ) %]
790                                             <div id="dropboxmode" class="checkin-active-setting">
791                                         [% ELSE %]
792                                             <div id="dropboxmode" class="checkin-active-setting" style="display:none;">
793                                         [% END %]
794                                             <p><i class="fa fa-check"></i> Book drop mode. <span class="single-line">( Effective checkin date is [% dropboxdate | $KohaDates with_hours => 1 %] )</span></p>
795                                         </div>
796                                         [% IF ( return_date_override_remember ) %]
797                                             <div id="return_date_remember" class="checkin-active-setting">
798                                         [% ELSE %]
799                                             <div id="return_date_remember" class="checkin-active-setting" style="display:none;">
800                                         [% END %]
801                                             <p><i class="fa fa-check"></i> Saved check-in date: <span id="saved_return_date" class="single-line">[% return_date_override | html %]</span></p>
802                                         </div>
803                                     </div>
804                                 </div>
805
806                                 <div class="circ-settings">
807                                     [% IF Koha.Preference('SpecifyReturnDate') %]
808                                         <div class="date-select" id="return_date_override_fields">
809                                             <div class="hint">Specify return date [% INCLUDE 'date-format.inc' %]: </div>
810
811                                             <input type="text" size="13" id="return_date_override" name="return_date_override" value="[% return_date_override | html %]" />
812
813
814
815                                             <button type="button" class="action btn btn-default btn-xs" id="cleardate" name="cleardate">Clear</button>
816                                             <div class="circ-setting">
817                                                 [% IF ( return_date_override_remember ) %]
818                                                     <input type="checkbox" id="return_date_override_remember" name="return_date_override_remember" checked="checked" />
819                                                 [% ELSE %]
820                                                     <input type="checkbox" id="return_date_override_remember" name="return_date_override_remember" />
821                                                 [% END %]
822                                                 <label for="return_date_override_remember"> Remember return date for next check in</label>
823                                             </div>
824                                         </div> <!-- /.date-select -->
825                                     [% END %]
826
827                                     [% IF ( CAN_user_updatecharges_writeoff && overduecharges ) %]
828                                         <div id="forgive-overdue-fines" class="circ-setting">
829                                             [% IF ( exemptfine ) %]
830                                                 <input type="checkbox" id="exemptcheck" name="exemptfine" value="exemptfine" checked="checked" />
831                                             [% ELSE %]
832                                                 <input type="checkbox" id="exemptcheck" name="exemptfine" value="exemptfine" />
833                                             [% END %]
834                                             <label for="exemptcheck">Forgive overdue charges</label>
835                                         </div>
836                                     [% END %] <!-- overduecharges -->
837
838                                     <div id="book-drop-mode" class="circ-setting">
839                                         [% IF ( dropboxmode ) %]
840                                             <input type="checkbox" id="dropboxcheck" name="dropboxmode" value="dropboxmode" checked="checked" />
841                                         [% ELSE %]
842                                             <input type="checkbox" id="dropboxcheck" name="dropboxmode" value="dropboxmode" />
843                                         [% END %]
844                                         <label for="dropboxcheck">Book drop mode</label>
845                                     </div>
846
847                                     [% IF Koha.Preference('ExpireReservesMaxPickUpDelayCharge') %]
848                                         <div class="forgive-manual-hold-fees circ-setting">
849                                             [% IF ( forgivemanualholdsexpire ) %]
850                                                 <input type="checkbox" id="forgivemanualholdsexpire" name="forgivemanualholdsexpire" value="forgivemanualholdsexpire" checked="checked" />
851                                             [% ELSE %]
852                                                 <input type="checkbox" id="forgivemanualholdsexpire" name="forgivemanualholdsexpire" value="forgivemanualholdsexpire" />
853                                             [% END %]
854                                             <label for="forgivemanualholdsexpire">Forgive fees for manually expired holds</label>
855                                         </div>
856                                     [% END %] <!-- overduecharges -->
857
858                                 </div> <!-- /.circ-settings -->
859                             </fieldset> <!-- /#circ_returns_checkin -->
860                         </form> <!-- /#checkin-form -->
861
862                         [% IF ( riloop ) %]
863                             <h2>Checked-in items</h2>
864                             <table id="checkedintable">
865                                 <thead>
866                                     <tr>
867                                         <th class="ci-duedate">Due date</th>
868                                         <th class="ci-title">Title</th>
869                                         <th class="ci-author">Author</th>
870                                         <th class="ci-barcode">Barcode</th>
871                                         <th class="ci-homelibrary">Home library</th>
872                                         <th class="ci-holdinglibrary">Holding library</th>
873                                         <th class="ci-shelvinglocation">Shelving location</th>
874                                         <th class="ci-callnumber">Call number</th>
875                                         <th class="ci-dateaccessioned">Date acquired</th>
876                                         <th class="ci-recordlevelitemtype">Record-level itemtype</th>
877                                         <th class="ci-itemtype">Item type</th>
878                                         <th class="ci-collection">Collection</th>
879                                         <th class="ci-patron">Patron</th>
880                                         <th class="ci-note">Note</th>
881                                     </tr>
882                                 </thead>
883
884                                 [% FOREACH riloo IN riloop %]
885                                     <tr>
886                                         <td class="ci-duedate">
887                                             [% IF ( riloo.duedate ) %]
888                                                 [% IF ( riloo.return_overdue ) %]
889                                                     <span class="overdue">[% riloo.duedate | html %] (overdue)</span>
890                                                 [% ELSE %]
891                                                     [% riloo.duedate | html %]
892                                                 [% END %]
893                                             [% ELSE %]
894                                                 Not checked out
895                                             [% END %]
896                                             [% IF ( riloo.damaged ) %]
897                                                 <span class="dmg">[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.damaged', authorised_value => riloo.damaged ) | html %]</span>
898                                             [% END %]
899                                         </td>
900                                         <td class="ci-title">
901                                             <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% riloo.itembiblionumber | uri %]">
902                                                 [% riloo.itemtitle | html %]
903                                                 [% FOREACH subtitle IN riloo.subtitle.split(' \\| ') %] <span class="subtitle">[% subtitle | html %]</span>[% END %]
904                                                 [% FOREACH part_number IN riloo.part_number.split(' \\| ') %] <span class="part_number">[% part_number | html %]</span>[% END %]
905                                                 [% FOREACH part_name IN riloo.part_name.split(' \\| ') %] <span class="part_name">[% part_name | html %]<span>[% END %]
906                                             </a>
907                                             [% IF ( riloo.enumchron ) %]
908                                                 <br/>
909                                                 <span class="item_enumeration" style="white-space: nowrap;">[% riloo.enumchron | html %]</span>
910                                             [% END %]
911                                         </td>
912                                         <td class="ci-author">[% riloo.itemauthor | html %]</td>
913                                         <td class="ci-barcode">
914                                             <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% riloo.itembiblionumber | uri %]&amp;itemnumber=[% riloo.itemnumber | uri %]#item[% riloo.itemnumber | uri %]">[% riloo.barcode | html %]</a>
915                                         </td>
916                                         <td class="ci-homelibrary">
917                                             [% Branches.GetName( riloo.homebranch ) | html %]
918                                         </td>
919                                         <td class="ci-holdinglibrary">
920                                             [% Branches.GetName( riloo.holdingbranch ) | html %]
921                                         </td>
922                                         <td class="ci-shelvinglocation">
923                                             <span class="shelvingloc">[% riloo.location | html %]</span>
924                                         </td>
925                                         <td class="ci-callnumber">
926                                             [% riloo.itemcallnumber | html %]
927                                         </td>
928                                         <td class="ci-dateaccessioned">
929                                             [% riloo.dateaccessioned | $KohaDates %]
930                                         </td>
931                                         <td class="ci-recordlevelitemtype">
932                                             [% ItemTypes.GetDescription( riloo.recordtype ) | html %]
933                                         </td>
934                                         <td class="ci-itemtype">
935                                             [% ItemTypes.GetDescription( riloo.itemtype ) | html %]
936                                         </td>
937                                         <td class="ci-collection">
938                                             [% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.ccode', authorised_value => riloo.ccode) | html %]
939                                         </td>
940                                         <td class="ci-patron">
941                                             [% IF ( riloo.duedate ) %]
942                                                 [% INCLUDE 'patron-title.inc' patron=riloo.patron hide_patron_infos_if_needed=1 invert_name=1 %]
943                                                 [% IF riloo.borissuescount %]
944                                                     <span class="results_summary nowrap">
945                                                         <span class="label">Checkouts:</span>
946                                                         <span class="number_box">
947                                                             <a href="/cgi-bin/koha/circ/circulation.pl?borrowernumber=[% riloo.patron.borrowernumber | uri %]">[% riloo.borissuescount | html %]</a>
948                                                         </span>
949                                                     </span>
950                                                 [% END %]
951                                                 <a class="btn btn-default btn-xs printcheckinslip" href="#" data-borrowernumber="[% riloo.patron.borrowernumber | html %]"><i class="fa fa-print"></i> Print checkin slip</a>
952                                             [% ELSE %]
953                                                 Not checked out
954                                             [% END %]
955                                         </td>
956                                         <td class="ci-note">
957                                             [% IF ( riloo.patron.borrowernotes ) %]
958                                                 <p><span class="circ-hlt patron-note">[% riloo.patron.borrowernotes | html %]</span></p>
959                                             [% END %]
960                                             [% IF ( riloo.itemnote ) %]
961                                                 <p><span class="circ-hlt item-note-public">[% riloo.itemnote | html %]</span></p>
962                                             [% END %]
963                                             [% IF ( riloo.itemnotes_nonpublic ) %]
964                                                 <p><span class="circ-hlt item-note-nonpublic">[% riloo.itemnotes_nonpublic | html %]</span></p>
965                                             [% END %]
966                                         </td>
967                                     </tr>
968                                 [% END # /FOREACH riloo %]
969                             </table> <!-- /#checkedintable -->
970                         [% END # /IF riloop %]
971
972                     [% IF Koha.Preference('CircSidebar') %]
973                             </div> <!-- /.col-sm-10.col-sm-push-2 -->
974                             <div class="col-sm-2 col-sm-pull-10">
975                                 <aside>
976                                     [% INCLUDE 'circ-nav.inc' %]
977                                 </aside>
978                             </div> <!-- /.col-sm-2.col-sm-pull-10 -->
979                         </div> <!-- /.row -->
980                     [% ELSE %]
981                             </div> <!-- /.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2 -->
982                         </div> <!-- /.row -->
983                     [% END %]
984
985                 </main>
986             </div> <!-- /.col-sm-12 -->
987         </div> <!-- /.row -->
988
989 [% MACRO jsinclude BLOCK %]
990     [% INCLUDE 'datatables.inc' %]
991     [% INCLUDE 'columns_settings.inc' %]
992     [% INCLUDE 'calendar.inc' %]
993     [% Asset.js("lib/jquery/plugins/jquery-ui-timepicker-addon.min.js") | $raw %]
994     [% Asset.js("js/pages/circulation.js") | $raw %]
995     [% INCLUDE 'timepicker.inc' %]
996
997     <script>
998         function Dopop(link) {
999             var newin = window.open(link, 'popup', 'width=600,height=400,resizable=1,toolbar=0,scrollbars=1,top');
1000             $("#barcode").focus();
1001         }
1002         $(document).ready(function () {
1003             $("#checkin-form").preventDoubleFormSubmit();
1004             $(".modal.block").modal({ backdrop: 'static'}).on('shown.bs.modal', function() {
1005                 $("#barcode").prop("disabled", true);
1006                 $(".show_checkin_dialog").show();
1007             }).on('hidden.bs.modal', function() {
1008                 $("#barcode").prop("disabled", false).focus();
1009             });
1010             $(".modal.noblock").on('show.bs.modal', function() {
1011                 /* If the modal doesn't block further action, the backdrop should be hidden.
1012                    In order for this to happen smoothly we add a class to the body tag which
1013                    targeted in the CSS */
1014                 $("body").addClass("nobackdrop");
1015             }).modal()
1016             .on('shown.bs.modal', function() {
1017                 $("#barcode").prop("disabled", false).focus();
1018             }).on('hidden.bs.modal', function() {
1019                 $("#barcode").prop("disabled", false).focus();
1020             });
1021
1022             $("body").on("click", ".show_checkin_dialog button", function(e){
1023                 e.preventDefault();
1024                 $(".modal").modal("show");
1025             });
1026             [% IF reserve_id %]
1027                 $(".print-slip").on('click', function(e) {
1028                     e.preventDefault();
1029                     Dopop('hold-transfer-slip.pl?reserve_id=[% reserve_id | uri %]');
1030                 });
1031                 [% IF print_slip %]
1032                     Dopop('hold-transfer-slip.pl?reserve_id=[% reserve_id | uri %]');
1033                 [% END %]
1034             [% END %]
1035             var columns_settings = [% TablesSettings.GetColumns( 'circ', 'returns', 'checkedintable', 'json' ) | $raw %]
1036             var returns_table = KohaTable("checkedintable", {
1037                     "bFilter":false,
1038                     "bPaginate":false,
1039                     "bInfo":false,
1040                     "bSort":false,
1041                     "dom": 'B<"clearfix">t',
1042                     }, columns_settings);
1043
1044             $("#return_date_override").datetimepicker({
1045                 onClose: function(dateText, inst) {
1046                     if (validate_date(dateText, inst) ) {
1047                         $("#barcode").focus();
1048                     }
1049                 },
1050                 defaultDate: -1,
1051                 hour: 23,
1052                 minute: 59,
1053                 maxDate: 0
1054             }).on("change", function(e, value) {
1055                 if ( ! is_valid_date( $(this).val() ) ) {$(this).val("");}
1056             });
1057             $("#return_date_override").on("blur", function() {
1058                 check_valid_return_date();
1059             });
1060             $("#checkin-form").submit(function( event ) {
1061                 if ( !check_valid_return_date() ) {
1062                     event.preventDefault();
1063                 }
1064             });
1065
1066             function check_valid_return_date() {
1067                 if ( $("#return_date_override").val() ) {
1068                     var datetime = DateTime_from_syspref( $("#return_date_override").val() );
1069                     var now = new Date();
1070                     if ( !datetime || datetime > now ) {
1071                         alert("Invalid return date/time!");
1072                         $("#return_date_override").val("")
1073                         return false;
1074                     }
1075                 }
1076                 // Add saved date information to onscreen message, which
1077                 // may or may not be hidden
1078                 $("#saved_return_date").text( $("#return_date_override").val() );
1079                 return true;
1080             }
1081
1082             $("#exemptcheck").change(function () {
1083                 if (this.checked == true) {
1084                     $("#barcode").addClass("input-warning");
1085                     $("#exemptfines").show();
1086                 } else {
1087                     $("#barcode").removeClass("input-warning");
1088                     $("#exemptfines").hide();
1089                 }
1090                 $("#barcode").focus();
1091             });
1092             $("#dropboxcheck").change(function () {
1093                 if (this.checked == true) {
1094                     $("#barcode").addClass("input-warning");
1095                     $("#dropboxmode").show();
1096
1097                     $("#return_date_override_fields :input").prop('disabled', true);
1098                     $("#return_date_override").datetimepicker("disable");
1099                 } else {
1100                     $("#barcode").removeClass("input-warning");
1101                     $("#dropboxmode").hide();
1102
1103                     $("#return_date_override_fields :input").prop('disabled', false);
1104                     $("#return_date_override").datetimepicker("enable");
1105                 }
1106                 $("#barcode").focus();
1107             });
1108             $("#forgivemanualholdsexpire").change(function () {
1109                 if (this.checked == true) {
1110                     $("#barcode").addClass("input-warning");
1111                     $("#forgivemanualholdsexpire-alert").show();
1112                 } else {
1113                     $("#barcode").removeClass("input-warning");
1114                     $("#forgivemanualholdsexpire-alert").hide();
1115                 }
1116                 $("#barcode").focus();
1117             });
1118
1119             [% IF(overduecharges) %]
1120                 $("#barcode").focus(function () {
1121                     if (($("#exemptcheck").prop("checked") == true) || ($("#dropboxcheck").prop("checked") == true)) {
1122                         $("#barcode").addClass("input-warning");
1123                     } else {
1124                         $("#barcode").removeClass("input-warning");
1125                     }
1126                 });
1127                 $("#barcode").blur(function () {
1128                     $("#barcode").removeClass("input-warning");
1129                 });
1130             [% END %]
1131
1132             $('.openWin').on("click",function(e){
1133                 Dopop( $(this).data("url") );
1134             });
1135
1136             $('.submit').on("click",function(e){
1137                 this.form.submit();
1138             });
1139
1140             $('.cancel').on("click",function(e){
1141                 var docancel = $("<input>").attr("type", "hidden").attr("name", "canceltransfer").val(1);
1142                 $('#wrongtransferform').append(docancel);
1143                 this.form.submit();
1144             });
1145
1146             $('.print').on("click",function(e){
1147                 this.form.print_slip.value = 1;
1148                 let barcode = document.getElementById('confirm-hold-barcode');
1149                 if ( barcode ) barcode.remove();
1150                 if ($(this).attr('name') == "dotransfer") {
1151                     var dotransfer = $("<input>").attr("type", "hidden").attr("name", "dotransfer").val("Yes");
1152                     $('#mainform').append(dotransfer);
1153                 }
1154                 this.form.submit();
1155             });
1156
1157             $('.cancel-hold').on("click",function(e){
1158                 this.form.cancel_reserve.value = 1;
1159                 this.form.submit();
1160             });
1161
1162             $('.action').on("click",function(e){
1163                 this.checked = false;
1164                 this.form.return_date_override.value = '';
1165                 this.form.return_date_override_remember.checked = false;
1166                 this.form.barcode.focus();
1167                 $("#return_date_remember").hide();
1168                 return false;
1169             });
1170
1171             $("#return_date_override_remember").on("change", function(){
1172                 if( $(this).prop("checked" ) ){
1173                     if( $("#return_date_override").val() == "" ){
1174                         $("#saved_return_date").text( _("No date selected") );
1175                     } else {
1176                         $("#saved_return_date").text( $("#return_date_override").val() );
1177                     }
1178                     $("#return_date_remember").show();
1179                 } else {
1180                     $("#return_date_remember").hide();
1181                 }
1182             });
1183             $('[data-toggle="tooltip"]').tooltip();
1184
1185             $(".printcheckinslip").on("click", function(e){
1186                 e.preventDefault();
1187                 var borrowernumber = $(this).data('borrowernumber');
1188                 window.open("/cgi-bin/koha/members/printslip.pl?borrowernumber=" + borrowernumber + "&amp;print=checkinslip", "printwindow");
1189             });
1190
1191         });
1192     </script>
1193 [% END %]
1194
1195 [% INCLUDE 'intranet-bottom.inc' %]