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