Lines 17-26
Link Here
|
17 |
[% INCLUDE 'circ-search.inc' %] |
17 |
[% INCLUDE 'circ-search.inc' %] |
18 |
[% END %] |
18 |
[% END %] |
19 |
[% INCLUDE 'doc-head-open.inc' %] |
19 |
[% INCLUDE 'doc-head-open.inc' %] |
20 |
[% SET libraries = Branches.all %] |
|
|
21 |
[% SET categories = Categories.all.unblessed %] |
22 |
[% SET columns = ['name', 'cardnumber', 'dateofbirth', 'category', 'branch', 'address', 'phone'] %] |
23 |
[% PROCESS "patron-search.inc" %] |
24 |
[% UNLESS ( multi_hold ) %] |
20 |
[% UNLESS ( multi_hold ) %] |
25 |
<title>Place a hold on [% INCLUDE 'biblio-title-head.inc' %] › Holds › Circulation › Koha</title> |
21 |
<title>Place a hold on [% INCLUDE 'biblio-title-head.inc' %] › Holds › Circulation › Koha</title> |
26 |
[% ELSE %] |
22 |
[% ELSE %] |
Lines 86-97
Link Here
|
86 |
[% END %] |
82 |
[% END %] |
87 |
</li> |
83 |
</li> |
88 |
</ol> |
84 |
</ol> |
89 |
<ol> |
|
|
90 |
[% IF Koha.Preference('showLastPatron') %][% INCLUDE 'last-borrower.inc' %][% END %] |
91 |
</ol> |
92 |
<ol> |
93 |
<a class="toplinks" href="/cgi-bin/koha/help.pl" id="helper"><i class="fa fa-question-circle"></i> <span>Help</span></a> |
94 |
</ol> |
95 |
</nav> |
85 |
</nav> |
96 |
[% END # UNLESS multi_hold %] |
86 |
[% END # UNLESS multi_hold %] |
97 |
|
87 |
|
Lines 104-110
Link Here
|
104 |
[% END %] |
94 |
[% END %] |
105 |
|
95 |
|
106 |
<main> |
96 |
<main> |
107 |
<h1>Holds</h1> |
|
|
108 |
|
97 |
|
109 |
[% IF ( nobiblio ) %] |
98 |
[% IF ( nobiblio ) %] |
110 |
<div class="dialog alert"> |
99 |
<div class="dialog alert"> |
Lines 131-143
Link Here
|
131 |
<p>Hold placed by : <strong> [% nextreservsurname | html %] [% nextreservfirstname | html %]</strong> at : <strong> [% branchname | html %] </strong>, Please transfer this item. |
120 |
<p>Hold placed by : <strong> [% nextreservsurname | html %] [% nextreservfirstname | html %]</strong> at : <strong> [% branchname | html %] </strong>, Please transfer this item. |
132 |
</p> |
121 |
</p> |
133 |
<form name="cancelReservewithtransfert" action="branchreserves.pl" method="post"> |
122 |
<form name="cancelReservewithtransfert" action="branchreserves.pl" method="post"> |
134 |
<input type="submit" class="principal" /> |
123 |
<input type="submit" class="button" /> |
135 |
</form> |
124 |
</form> |
136 |
</div> |
125 |
</div> |
137 |
[% END %] |
126 |
[% END %] |
138 |
|
127 |
|
139 |
[% UNLESS ( multi_hold ) %] |
128 |
[% UNLESS ( multi_hold ) %] |
140 |
<h2>Place a hold on [% INCLUDE 'biblio-title.inc' link = 1 %] [% IF biblio.author %] by [% biblio.author | html %][% END %]</h2> |
129 |
<h2>Place a hold on [% INCLUDE 'biblio-title.inc' link = 1 %]</h2> |
141 |
[% ELSE %] |
130 |
[% ELSE %] |
142 |
<h2> |
131 |
<h2> |
143 |
[% IF ( patron ) %] |
132 |
[% IF ( patron ) %] |
Lines 166-188
Link Here
|
166 |
<p>No club with this name, please, try another</p> |
155 |
<p>No club with this name, please, try another</p> |
167 |
</div> |
156 |
</div> |
168 |
[% END %] |
157 |
[% END %] |
169 |
<fieldset> |
158 |
<fieldset class="brief"> |
170 |
[% UNLESS multi_hold %] |
159 |
[% UNLESS multi_hold %] |
171 |
[% IF clubcount %] |
160 |
[% IF clubcount %] |
172 |
<h2>Search patrons or clubs</h2> |
161 |
<h3>Search patrons or clubs</h3> |
173 |
[% ELSE %] |
162 |
[% ELSE %] |
174 |
<h2>Search patrons</h2> |
163 |
<label>Search patrons</label> |
175 |
[% END %] |
164 |
[% END %] |
176 |
[% END %] |
165 |
[% END %] |
177 |
<div id="circ_holds_select" class="toptabs"> |
166 |
<div id="circ_holds_select" class="toptabs"> |
178 |
<ul class="nav nav-tabs" role="tablist"> |
167 |
<ul> |
179 |
<li role="presentation" class="active"><a href="#holds_patronsearch_pane" aria-controls="holds_patronsearch_pane" role="tab" data-toggle="tab">Patrons</a></li> |
168 |
<li><a href="#holds_patronsearch_pane">Patrons</a></li> |
180 |
[% IF clubcount %] |
169 |
[% IF clubcount %] |
181 |
<li role="presentation"><a href="#holds_clubsearch_pane" aria-controls="holds_clubsearch_pane" role="tab" data-toggle="tab">Clubs</a></li> |
170 |
<li><a href="#holds_clubsearch_pane">Clubs</a></li> |
182 |
[% END %] |
171 |
[% END %] |
183 |
</ul> |
172 |
</ul> |
184 |
<div id="holds_patronsearch_pane"> |
173 |
<div id="holds_patronsearch_pane"> |
185 |
[% PROCESS patron_search_filters_simple %] |
|
|
186 |
<form id="holds_patronsearch" action="request.pl?biblionumbers=[% biblionumbers | html %]" method="post"> |
174 |
<form id="holds_patronsearch" action="request.pl?biblionumbers=[% biblionumbers | html %]" method="post"> |
187 |
<div class="hint">Enter patron card number or partial name:</div> |
175 |
<div class="hint">Enter patron card number or partial name:</div> |
188 |
<input type="text" size="40" id="patron" class="focus" name="findborrower" autocomplete="off" /> |
176 |
<input type="text" size="40" id="patron" class="focus" name="findborrower" autocomplete="off" /> |
Lines 210-254
Link Here
|
210 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]" /> |
198 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]" /> |
211 |
[% END %] |
199 |
[% END %] |
212 |
|
200 |
|
213 |
[% PROCESS patron_search_table table_id => 'table_borrowers', open_on_row_click => 1 %] |
201 |
</form> <!-- /#holds_patronsearch --> |
|
|
202 |
[% IF clubs %] |
203 |
[% INCLUDE 'clubs-table.inc' destination = "holds" %] |
204 |
[% END %] |
214 |
</div> |
205 |
</div> |
215 |
[% IF clubcount %] |
206 |
[% END %] |
216 |
<div id="holds_clubsearch_pane" role="tabpanel" class="tab-pane"> |
|
|
217 |
<form id="holds_clubsearch" action="request.pl" method="post"> |
218 |
<div class="hint">Enter club ID or partial name:</div> |
219 |
<input type="text" size="40" id="club" class="focus" name="findclub" autocomplete="off" /> |
220 |
<input type="submit" value="Search" /> |
221 |
[% FOREACH biblionumber IN biblionumbers %] |
222 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]"/> |
223 |
[% END %] |
224 |
|
225 |
</form> <!-- /#holds_patronsearch --> |
226 |
[% IF clubs %] |
227 |
[% INCLUDE 'clubs-table.inc' destination = "holds" %] |
228 |
[% END %] |
229 |
</div> |
230 |
[% END %] |
231 |
</div> <!-- /.tab-content --> |
232 |
</div> |
207 |
</div> |
233 |
</fieldset> |
208 |
</fieldset> |
234 |
[% ELSIF club %] |
209 |
[% ELSIF club %] |
235 |
<div class="dialog alert hide clubalert"> |
210 |
<div class="dialog alert hide clubalert"> |
236 |
</div> |
211 |
</div> |
237 |
<fieldset class="rows"> |
212 |
<fieldset class="rows"> |
238 |
<legend>Hold details</legend> |
213 |
<h3>Hold details</h3> |
239 |
<form action="/api/v1/clubs/[% club.id | html %]/holds" method="post" name="form" id="club-request-form"> |
214 |
<form action="/api/v1/clubs/[% club.id | html %]/holds" method="post" name="form" id="club-request-form"> |
240 |
|
215 |
|
241 |
[% IF ( multi_hold ) %] |
216 |
[% IF ( multi_hold ) %] |
|
|
217 |
<input type="hidden" name="biblionumbers" id="multi_hold_bibs" value="[% biblionumbers | html %]"/> |
218 |
<input type="hidden" name="bad_bibs" id="bad_bibs" value=""/> |
242 |
<input type="hidden" name="request" value="any"/> |
219 |
<input type="hidden" name="request" value="any"/> |
243 |
[% FOREACH biblioloo IN biblioloop %] |
220 |
[% FOREACH biblioloo IN biblioloop %] |
244 |
[% UNLESS biblioloo.none_avail %] |
221 |
<input type="hidden" name="title_[% biblioloo.biblionumber | html %]" value="[% biblioloo.title | html %]"/> |
245 |
<input type="hidden" name="holdable_bibs" id="holdable_bibs" value="[% biblioloo.biblionumber | html %]"/> |
222 |
<input type="hidden" name="rank_[% biblioloo.biblionumber | html %]" value="[% biblioloo.rank | html %]"/> |
246 |
<input type="hidden" name="title_[% biblioloo.biblionumber | html %]" value="[% biblioloo.title | html %]"/> |
|
|
247 |
<input type="hidden" name="rank_[% biblioloo.biblionumber | html %]" value="[% biblioloo.rank | html %]"/> |
248 |
[% END %] |
249 |
[% END %] |
223 |
[% END %] |
250 |
[% ELSE %] |
224 |
[% ELSE %] |
251 |
<input type="hidden" name="holdable_bibs" id="holdable_bibs" value="[% biblio.biblionumber | html %]"/> |
225 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]" /> |
252 |
<input type="hidden" name="title" value="[% biblio.title | html %]" /> |
226 |
<input type="hidden" name="title" value="[% biblio.title | html %]" /> |
253 |
<input type="hidden" name="rank-request" value="[% fixedRank | html %]" /> |
227 |
<input type="hidden" name="rank-request" value="[% fixedRank | html %]" /> |
254 |
[% END # /IF multi_hold %] |
228 |
[% END # /IF multi_hold %] |
Lines 311-324
Link Here
|
311 |
[% END %] |
285 |
[% END %] |
312 |
[% UNLESS ( multi_hold ) %] |
286 |
[% UNLESS ( multi_hold ) %] |
313 |
<fieldset class="action"> |
287 |
<fieldset class="action"> |
314 |
<input type="submit" class="principal" value="Place hold" /> |
288 |
<input type="submit" value="Place hold" /> |
315 |
</fieldset> |
289 |
</fieldset> |
316 |
[% ELSE %] |
290 |
[% ELSE %] |
317 |
<table id="requesttitles"> |
291 |
<table id="requesttitles"> |
318 |
<tr> |
292 |
<tr> |
319 |
<th> </th> |
293 |
<th> </th> |
320 |
<th>Title</th> |
294 |
<th>Title</th> |
321 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
295 |
[% UNLESS ( item_level_itypes ) %] |
322 |
<th>Item type</th> |
296 |
<th>Item type</th> |
323 |
[% END %] |
297 |
[% END %] |
324 |
<th>Priority</th> |
298 |
<th>Priority</th> |
Lines 339-345
Link Here
|
339 |
<ul> |
313 |
<ul> |
340 |
<li> |
314 |
<li> |
341 |
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]">[% biblioloo.title | html %]</a> |
315 |
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]">[% biblioloo.title | html %]</a> |
342 |
[% IF biblioloo.author %] by [% biblioloo.author | html %][% END %] |
|
|
343 |
</li> |
316 |
</li> |
344 |
[% IF ( biblioloo.publicationyear ) %] |
317 |
[% IF ( biblioloo.publicationyear ) %] |
345 |
<li> |
318 |
<li> |
Lines 351-359
Link Here
|
351 |
<span class="not_holdable" title="[% biblioloo.biblionumber | html %]"></span> |
324 |
<span class="not_holdable" title="[% biblioloo.biblionumber | html %]"></span> |
352 |
[% END %] |
325 |
[% END %] |
353 |
</td> |
326 |
</td> |
354 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
327 |
[% UNLESS ( item_level_itypes ) %] |
355 |
<td> |
328 |
<td> |
356 |
<img src="[% biblioloo.itemtype.image_location| html %]" alt="[% biblioloo.itemtype.translated_description | html %]" title="[% biblioloo.itemtype.translated_description | html %]" /> |
329 |
<img src="[% biblioloo.imageurl | html %]" alt="[% biblioloo.itypename | html %]" title="[% biblioloo.itypename | html %]" /> |
357 |
</td> |
330 |
</td> |
358 |
[% END %] |
331 |
[% END %] |
359 |
<td>[% biblioloo.rank | html %]</td> |
332 |
<td>[% biblioloo.rank | html %]</td> |
Lines 403-409
Link Here
|
403 |
</div> |
376 |
</div> |
404 |
[% END %] |
377 |
[% END %] |
405 |
|
378 |
|
406 |
[% IF ( no_reserves_allowed || exceeded_maxreserves || exceeded_holds_per_record || alreadyreserved || none_available || alreadypossession || ageRestricted || recall ) %] |
379 |
[% IF ( no_reserves_allowed || exceeded_maxreserves || exceeded_holds_per_record || alreadyreserved || none_available || alreadypossession || ageRestricted ) %] |
407 |
<div class="dialog alert"> |
380 |
<div class="dialog alert"> |
408 |
|
381 |
|
409 |
[% UNLESS ( multi_hold ) %] |
382 |
[% UNLESS ( multi_hold ) %] |
Lines 425-432
Link Here
|
425 |
<li> <strong>No items are available</strong> to be placed on hold.</li> |
398 |
<li> <strong>No items are available</strong> to be placed on hold.</li> |
426 |
[% ELSIF ( maxreserves ) %] |
399 |
[% ELSIF ( maxreserves ) %] |
427 |
<li><strong>Too many holds: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> has too many holds.</li> |
400 |
<li><strong>Too many holds: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %] </a> has too many holds.</li> |
428 |
[% ELSIF ( recall ) %] |
|
|
429 |
<li><a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | uri %]">[% patron.firstname | html %] [% patron.surname | html %]</a> has <strong>already placed a recall</strong> on this item.</li> |
430 |
[% END # /IF exceeded_maxreserves %] |
401 |
[% END # /IF exceeded_maxreserves %] |
431 |
</ul> |
402 |
</ul> |
432 |
[% ELSE # UNLESS multi_hold %] |
403 |
[% ELSE # UNLESS multi_hold %] |
Lines 441-448
Link Here
|
441 |
<li><strong>Too many holds for <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]"> [% biblioloo.title | html %]</a>: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | html %]">[% patron.firstname | html %] [% patron.surname | html %] </a> can only place a maximum of [% max_holds_for_record | html %] hold(s) on this record.</li> |
412 |
<li><strong>Too many holds for <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]"> [% biblioloo.title | html %]</a>: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% patron.borrowernumber | html %]">[% patron.firstname | html %] [% patron.surname | html %] </a> can only place a maximum of [% max_holds_for_record | html %] hold(s) on this record.</li> |
442 |
[% END %] |
413 |
[% END %] |
443 |
[% END %] |
414 |
[% END %] |
444 |
[% ELSIF ( none_available ) %] |
|
|
445 |
<li><strong>No items available: </strong>One or more records have no items that can be held</li> |
446 |
[% END # /IF exceeded_maxreserves %] |
415 |
[% END # /IF exceeded_maxreserves %] |
447 |
[% END # /UNLESS multi_hold %] |
416 |
[% END # /UNLESS multi_hold %] |
448 |
</div> |
417 |
</div> |
Lines 481-505
Link Here
|
481 |
</div> |
450 |
</div> |
482 |
|
451 |
|
483 |
<fieldset class="rows"> |
452 |
<fieldset class="rows"> |
484 |
<legend>Hold details</legend> |
453 |
<h3>Hold details</h3> |
485 |
<form action="placerequest.pl" method="post" name="form" id="hold-request-form"> |
454 |
<form action="placerequest.pl" method="post" name="form" id="hold-request-form"> |
486 |
|
455 |
|
487 |
<input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" /> |
456 |
<input type="hidden" name="borrowernumber" value="[% patron.borrowernumber | html %]" /> |
488 |
[% FOREACH biblionumber IN biblionumbers %] |
457 |
<input type="hidden" name="type" value="str8" /> |
489 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]"/> |
458 |
|
490 |
[% END %] |
|
|
491 |
[% IF ( multi_hold ) %] |
459 |
[% IF ( multi_hold ) %] |
|
|
460 |
<input type="hidden" name="biblionumbers" id="multi_hold_bibs" value="[% biblionumbers | html %]"/> |
492 |
<input type="hidden" name="multi_holds" id="multi_holds" value="1" /> |
461 |
<input type="hidden" name="multi_holds" id="multi_holds" value="1" /> |
|
|
462 |
<input type="hidden" name="bad_bibs" id="bad_bibs" value=""/> |
493 |
<input type="hidden" name="request" value="any"/> |
463 |
<input type="hidden" name="request" value="any"/> |
494 |
[% FOREACH biblioloo IN biblioloop %] |
464 |
[% FOREACH biblioloo IN biblioloop %] |
495 |
[% UNLESS biblioloo.none_avail %] |
465 |
<input type="hidden" name="title_[% biblioloo.biblionumber | html %]" value="[% biblioloo.title | html %]"/> |
496 |
<input type="hidden" name="holdable_bibs" id="holdable_bibs" value="[% biblioloo.biblionumber | html %]"/> |
466 |
<input type="hidden" name="rank_[% biblioloo.biblionumber | html %]" value="[% biblioloo.rank | html %]"/> |
497 |
<input type="hidden" name="title_[% biblioloo.biblionumber | html %]" value="[% biblioloo.title | html %]"/> |
|
|
498 |
<input type="hidden" name="rank_[% biblioloo.biblionumber | html %]" value="[% biblioloo.rank | html %]"/> |
499 |
[% END %] |
500 |
[% END %] |
467 |
[% END %] |
501 |
[% ELSE %] |
468 |
[% ELSE %] |
502 |
<input type="hidden" name="holdable_bibs" id="holdable_bibs" value="[% biblio.biblionumber | html %]"/> |
469 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]" /> |
503 |
<input type="hidden" name="title" value="[% biblio.title | html %]" /> |
470 |
<input type="hidden" name="title" value="[% biblio.title | html %]" /> |
504 |
<input type="hidden" name="rank-request" value="[% fixedRank | html %]" /> |
471 |
<input type="hidden" name="rank-request" value="[% fixedRank | html %]" /> |
505 |
[% END # /IF multi_hold %] |
472 |
[% END # /IF multi_hold %] |
Lines 580-585
Link Here
|
580 |
[% ELSE %] |
547 |
[% ELSE %] |
581 |
<input type="checkbox" id="requestany" name="request" checked="checked" value="Any" /> |
548 |
<input type="checkbox" id="requestany" name="request" checked="checked" value="Any" /> |
582 |
[% END %] |
549 |
[% END %] |
|
|
550 |
<input type="hidden" name="biblioitem" value="[% biblioitemnumber | html %]" /> |
583 |
<input type="hidden" name="alreadyreserved" value="[% alreadyreserved | html %]" /> |
551 |
<input type="hidden" name="alreadyreserved" value="[% alreadyreserved | html %]" /> |
584 |
</li> |
552 |
</li> |
585 |
|
553 |
|
Lines 604-851
Link Here
|
604 |
<fieldset class="action"> |
572 |
<fieldset class="action"> |
605 |
[% IF ( patron.borrowernumber ) %] |
573 |
[% IF ( patron.borrowernumber ) %] |
606 |
[% IF ( override_required ) %] |
574 |
[% IF ( override_required ) %] |
607 |
<button type="submit" class="btn btn-default warning" id="lientype"><i class="fa fa-exclamation-triangle "></i> Place hold</button> |
575 |
<button type="submit" class="btn btn-default warning"><i class="fa fa-exclamation-triangle "></i> Place hold</button> |
608 |
[% ELSIF ( none_available ) %] |
576 |
[% ELSIF ( none_available ) %] |
609 |
<button type="submit" disabled="disabled" class="btn btn-default btn-disabled" id="lientype">Place hold</button> |
577 |
<button type="submit" disabled="disabled" class="btn btn-default btn-disabled">Place hold</button> |
610 |
[% ELSE %] |
578 |
[% ELSE %] |
611 |
<button type="submit" class="btn btn-default" id="lientype">Place hold</button> |
579 |
<button type="submit" class="btn btn-default">Place hold</button> |
612 |
[% END %] |
580 |
[% END %] |
613 |
[% END %] |
581 |
[% END %] |
614 |
</fieldset> |
582 |
</fieldset> |
615 |
|
583 |
|
616 |
[% biblio = biblioloop.0 %] |
584 |
[% FOREACH bibitemloo IN bibitemloop %] |
|
|
585 |
<ol> |
586 |
[% UNLESS ( item_level_itypes ) %] |
587 |
<li> |
588 |
<span class="label">Item type:</span> |
589 |
[% bibitemloo.description | html %] |
590 |
</li> |
591 |
[% END %] |
617 |
|
592 |
|
618 |
<ol> |
593 |
[% IF ( bibitemloo.publicationyear ) %] |
619 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
594 |
<li> |
620 |
<li> |
595 |
<span class="label">Publication year:</span> |
621 |
<span class="label">Item typeX:</span> |
596 |
[% bibitemloo.publicationyear | html %] |
622 |
[% biblio.itemtype.translated_description | html %] |
597 |
</li> |
623 |
</li> |
598 |
[% END %] |
624 |
[% END %] |
599 |
</ol> |
625 |
|
600 |
|
626 |
[% IF ( biblio.biblioitem.publicationyear ) %] |
601 |
<h2 style="padding: 0 1em;"> |
627 |
<li> |
602 |
Place a hold on a specific item |
628 |
<span class="label">Publication year:</span> |
603 |
[% IF bibitemloo.force_hold_level == 'item' %] |
629 |
[% biblio.biblioitem.publicationyear | html %] |
604 |
<span class="error"><em>(Required)</em></span> |
630 |
</li> |
605 |
[% END %] |
631 |
[% END %] |
606 |
</h2> |
632 |
</ol> |
|
|
633 |
|
607 |
|
634 |
<h2 style="padding: 0 1em;"> |
608 |
<table id="requestspecific"> |
635 |
Place a hold on a specific item |
609 |
<thead> |
636 |
[% IF force_hold_level == 'item' %] |
610 |
<tr> |
637 |
<span class="error"><em>(Required)</em></span> |
611 |
<th>Hold</th> |
638 |
[% END %] |
612 |
[% IF ( item_level_itypes ) %] |
639 |
</h2> |
613 |
<th>Item type</th> |
640 |
|
614 |
[% END %] |
641 |
<table id="requestspecific"> |
615 |
<th>Barcode</th> |
642 |
<thead> |
616 |
<th>Home library</th> |
643 |
<tr> |
617 |
<th>Last location</th> |
644 |
<th>Hold</th> |
618 |
[% IF itemdata_ccode %] |
645 |
<th>Allowed pickup locations</th> |
619 |
<th>Collection</th> |
646 |
[% IF Koha.Preference('item-level_itypes') %] |
620 |
[% END %] |
647 |
<th>Item type</th> |
621 |
<th>Call number</th> |
648 |
[% END %] |
622 |
<th>Copy number</th> |
649 |
<th>Barcode</th> |
623 |
[% IF itemdata_enumchron %] |
650 |
<th>Home library</th> |
624 |
<th>Vol no.</th> |
651 |
<th>Last location</th> |
625 |
[% END %] |
652 |
[% IF itemdata_ccode %] |
626 |
<th>Information</th> |
653 |
<th>Collection</th> |
627 |
<th>Allowed pickup locations</th> |
654 |
[% END %] |
628 |
</tr> |
655 |
<th>Call number</th> |
629 |
</thead> |
656 |
<th>Copy number</th> |
630 |
<tbody> |
657 |
[% IF itemdata_enumchron %] |
631 |
[% SET selected = 0 %] |
658 |
<th>Vol no.</th> |
632 |
[% FOREACH itemloo IN bibitemloo.itemloop %] |
659 |
[% END %] |
633 |
[% UNLESS ( itemloo.hide ) %] |
660 |
<th>Information</th> |
634 |
<tr class="[% itemloo.backgroundcolor | html %]"> |
661 |
</tr> |
635 |
<td> |
662 |
</thead> |
636 |
[% IF itemloo.force_hold_level == 'record' # Patron has placed a record level hold previously for this record %] |
663 |
<tbody> |
637 |
<span class="error"> |
664 |
[% SET selected = 0 %] |
638 |
<i class="fa fa-times fa-lg" title="Cannot be put on hold"></i> |
665 |
[% FOREACH itemloo IN biblio.itemloop %] |
639 |
Hold must be record level |
666 |
[% UNLESS ( itemloo.hide ) %] |
640 |
</span> |
667 |
<tr class="[% itemloo.backgroundcolor | html %]"> |
641 |
[% ELSIF ( itemloo.available ) %] |
668 |
<td> |
642 |
<input type="radio" name="checkitem" value="[% itemloo.itemnumber | html %]" /> |
669 |
[% IF force_hold_level == 'record' # Patron has placed a record level hold previously for this record %] |
643 |
[% ELSIF ( itemloo.override ) %] |
670 |
<span class="error"> |
644 |
<input type="radio" name="checkitem" class="needsoverride" value="[% itemloo.itemnumber | html %]" /> |
671 |
<i class="fa fa-times fa-lg" title="Cannot be put on hold"></i> |
645 |
<i class="fa fa-exclamation-triangle fa-lg" style="color:gold" title="Requires override of hold policy"/></i> |
672 |
Hold must be record level |
646 |
[% ELSE %] |
673 |
</span> |
647 |
<span class="error"> |
674 |
[% ELSIF ( itemloo.available ) %] |
648 |
<i class="fa fa-times fa-lg" title="Cannot be put on hold"></i> |
675 |
<input type="radio" name="checkitem" value="[% itemloo.itemnumber | html %]" /> |
649 |
[% IF itemloo.not_holdable %] |
676 |
[% ELSIF ( itemloo.override ) %] |
650 |
[% IF itemloo.not_holdable == 'damaged' %] |
677 |
<input type="radio" name="checkitem" class="needsoverride" value="[% itemloo.itemnumber | html %]" /> |
651 |
Item damaged |
678 |
<i class="fa fa-exclamation-triangle fa-lg" style="color:gold" title="Requires override of hold policy"/></i> |
652 |
[% ELSIF itemloo.not_holdable == 'ageRestricted' %] |
679 |
[% ELSE %] |
653 |
Age restricted |
680 |
<span class="error"> |
654 |
[% ELSIF itemloo.not_holdable == 'tooManyHoldsForThisRecord' %] |
681 |
<i class="fa fa-times fa-lg" title="Cannot be put on hold"></i> |
655 |
Exceeded max holds per record |
682 |
[% IF itemloo.not_holdable %] |
656 |
[% ELSIF itemloo.not_holdable == 'tooManyReservesToday' %] |
683 |
[% IF itemloo.not_holdable == 'damaged' %] |
657 |
Daily hold limit reached for patron |
684 |
<span>Item damaged</span> |
658 |
[% ELSIF itemloo.not_holdable == 'tooManyReserves' %] |
685 |
[% ELSIF itemloo.not_holdable == 'ageRestricted' %] |
659 |
Too many holds |
686 |
<span>Age restricted</span> |
660 |
[% ELSIF itemloo.not_holdable == 'notReservable' %] |
687 |
[% ELSIF itemloo.not_holdable == 'tooManyHoldsForThisRecord' %] |
661 |
Not holdable |
688 |
<span>Exceeded max holds per record</span> |
662 |
[% ELSIF itemloo.not_holdable == 'cannotReserveFromOtherBranches' %] |
689 |
[% ELSIF itemloo.not_holdable == 'tooManyReservesToday' %] |
663 |
Patron is from different library |
690 |
<span>Daily hold limit reached for patron</span> |
664 |
[% ELSIF itemloo.not_holdable == 'branchNotInHoldGroup' %] |
691 |
[% ELSIF itemloo.not_holdable == 'tooManyReserves' %] |
665 |
Cannot place hold from patron's library |
692 |
<span>Too many holds</span> |
666 |
[% ELSIF itemloo.not_holdable == 'itemAlreadyOnHold' %] |
693 |
[% ELSIF itemloo.not_holdable == 'notReservable' %] |
667 |
Patron already has hold for this item |
694 |
<span>Not holdable</span> |
668 |
[% ELSIF itemloo.not_holdable == 'cannotBeTransferred' %] |
695 |
[% ELSIF itemloo.not_holdable == 'cannotReserveFromOtherBranches' %] |
669 |
Cannot be transferred to pickup library |
696 |
<span>Patron is from different library</span> |
670 |
[% ELSIF itemloo.not_holdable == 'pickupNotInHoldGroup' %] |
697 |
[% ELSIF itemloo.not_holdable == 'branchNotInHoldGroup' %] |
671 |
Only pickup locations within the same hold group are allowed |
698 |
<span>Cannot place hold from patron's library</span> |
672 |
[% ELSIF itemloo.not_holdable == 'noReservesAllowed' %] |
699 |
[% ELSIF itemloo.not_holdable == 'itemAlreadyOnHold' %] |
673 |
No reserves are allowed on this item |
700 |
<span>Patron already has hold for this item</span> |
674 |
[% ELSIF itemloo.not_holdable == 'libraryNotPickupLocation' %] |
701 |
[% ELSIF itemloo.not_holdable == 'cannotBeTransferred' %] |
675 |
Library is not a pickup location |
702 |
<span>Cannot be transferred to pickup library</span> |
676 |
[% ELSIF itemloo.not_holdable == 'no_valid_pickup_location' %] |
703 |
[% ELSIF itemloo.not_holdable == 'pickupNotInHoldGroup' %] |
677 |
No valid pickup location |
704 |
<span>Only pickup locations within the same hold group are allowed</span> |
678 |
[% ELSE %] |
705 |
[% ELSIF itemloo.not_holdable == 'noReservesAllowed' %] |
679 |
[% itemloo.not_holdable | html %] |
706 |
<span>No holds are allowed on this item</span> |
680 |
[% END %] |
707 |
[% ELSIF itemloo.not_holdable == 'libraryNotPickupLocation' %] |
|
|
708 |
<span>Library is not a pickup location</span> |
709 |
[% ELSIF itemloo.not_holdable == 'no_valid_pickup_location' %] |
710 |
<span>No valid pickup location</span> |
711 |
[% ELSIF itemloo.not_holdable == 'notforloan' %] |
712 |
<span>Not for loan</span> |
713 |
[% ELSE %] |
714 |
<span>[% itemloo.not_holdable | html %]</span> |
715 |
[% END %] |
681 |
[% END %] |
|
|
682 |
</span> |
683 |
[% END # /IF itemloo.force_hold_level %] |
684 |
</td> |
685 |
[% IF ( item_level_itypes ) %] |
686 |
<td> |
687 |
[% UNLESS ( noItemTypeImages ) %] |
688 |
[% IF ( itemloo.imageurl ) %]<img src="[% itemloo.imageurl | html %]" alt="" /> <br /> [% END %] |
716 |
[% END %] |
689 |
[% END %] |
717 |
</span> |
690 |
[% itemloo.itypename | html %] |
718 |
[% END # /IF force_hold_level %] |
691 |
</td> |
719 |
</td> |
|
|
720 |
<td> |
721 |
[% IF (itemloo.pickup_locations_count > 0) %] |
722 |
<select name="item_pickup_[% itemloo.itemnumber | html %]" class="pickup_locations" style="width:100%;" |
723 |
data-item-id="[% itemloo.itemnumber | html %]" |
724 |
data-patron-id="[% patron.borrowernumber | html %]" |
725 |
data-pickup-location-source="item"> |
726 |
[% IF (itemloo.default_pickup_location) %] |
727 |
<option value="[% itemloo.default_pickup_location.branchcode | html %]" selected="selected">[% itemloo.default_pickup_location.branchname | html %]</option> |
728 |
[% END %] |
692 |
[% END %] |
729 |
</select> |
|
|
730 |
[% END %] |
731 |
</td> |
732 |
[% IF Koha.Preference('item-level_itypes') %] |
733 |
<td> |
693 |
<td> |
734 |
[% UNLESS ( noItemTypeImages ) %] |
694 |
[% itemloo.barcode | html %] |
735 |
[% IF ( itemloo.itemtype.image_location) %]<img src="[% itemloo.itemtype.image_location | html %]" alt="" /> <br /> [% END %] |
|
|
736 |
[% END %] |
737 |
[% itemloo.itemtype.translated_description | html %] |
738 |
</td> |
695 |
</td> |
739 |
[% END %] |
|
|
740 |
<td> |
741 |
[% itemloo.barcode | html %] |
742 |
</td> |
743 |
<td> |
744 |
[% Branches.GetName( itemloo.homebranch ) | html %] |
745 |
</td> |
746 |
<td> |
747 |
[% Branches.GetName( itemloo.holdingbranch ) | html %] |
748 |
</td> |
749 |
[% IF itemdata_ccode %] |
750 |
<td> |
696 |
<td> |
751 |
[% IF ( itemloo.ccode ) %][% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.ccode', authorised_value => itemloo.ccode ) | html %][% END %] |
697 |
[% Branches.GetName( itemloo.homebranch ) | html %] |
752 |
</td> |
698 |
</td> |
753 |
[% END %] |
|
|
754 |
<td> |
755 |
[% itemloo.itemcallnumber | html %] |
756 |
</td> |
757 |
<td> |
758 |
[% IF ( itemloo.copynumber ) %][% itemloo.copynumber | html %][% ELSE %] [% END %] |
759 |
</td> |
760 |
[% IF itemdata_enumchron %] |
761 |
<td> |
699 |
<td> |
762 |
[% itemloo.enumchron | html %] |
700 |
[% Branches.GetName( itemloo.holdingbranch ) | html %] |
763 |
</td> |
701 |
</td> |
764 |
[% END %] |
702 |
[% IF itemdata_ccode %] |
765 |
[% IF ( itemloo.onloan ) %] |
703 |
<td> |
766 |
<td data-order="[% itemloo.date_due | html %]"> |
704 |
[% IF ( itemloo.ccode ) %][% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.ccode', authorised_value => itemloo.ccode ) | html %][% END %] |
767 |
<span class="checkedout">Due [% itemloo.date_due | $KohaDates as_due_date => 1 %]</span> |
705 |
</td> |
768 |
[% ELSE %] |
706 |
[% END %] |
769 |
<td> |
707 |
<td> |
770 |
[% IF ( itemloo.transfertwhen ) %] |
708 |
[% itemloo.itemcallnumber | html %] |
771 |
In transit from [% Branches.GetName( itemloo.transfertfrom ) | html %], |
709 |
</td> |
772 |
to [% Branches.GetName( itemloo.transfertto ) | html %], since [% itemloo.transfertwhen | html %] |
710 |
<td> |
773 |
[% END %] |
711 |
[% IF ( itemloo.copynumber ) %][% itemloo.copynumber | html %][% ELSE %] [% END %] |
774 |
[% END %] |
712 |
</td> |
775 |
|
713 |
[% IF itemdata_enumchron %] |
776 |
[% IF ( itemloo.reservedate ) %] |
714 |
<td> |
777 |
[% IF ( itemloo.nocancel ) %] |
715 |
[% itemloo.enumchron | html %] |
778 |
Can't be cancelled when item is in transit |
716 |
</td> |
779 |
[% ELSE %] |
717 |
[% END %] |
780 |
[% IF ( itemloo.waitingdate ) %]Waiting[% ELSE %]On hold[% END %] |
718 |
[% IF ( itemloo.onloan ) %] |
781 |
[% IF ( itemloo.canreservefromotherbranches ) %] |
719 |
<td data-order="[% itemloo.date_due | html %]"> |
782 |
for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% itemloo.ReservedFor.borrowernumber | uri %]">[% itemloo.ReservedFor.firstname | html %] [% itemloo.ReservedFor.surname | html %]</a> |
720 |
<span class="checkedout">Due [% itemloo.date_due | $KohaDates as_due_date => 1 %]</span> |
|
|
721 |
[% ELSE %] |
722 |
<td> |
723 |
[% IF ( itemloo.transfertwhen ) %] |
724 |
In transit from [% Branches.GetName( itemloo.transfertfrom ) | html %], |
725 |
to [% Branches.GetName( itemloo.transfertto ) | html %], since [% itemloo.transfertwhen | html %] |
783 |
[% END %] |
726 |
[% END %] |
784 |
[% IF ( itemloo.waitingdate ) %]at[% ELSE %]expected at[% END %] |
727 |
[% END %] |
785 |
[% Branches.GetName( itemloo.ExpectedAtLibrary ) | html %] since |
728 |
|
786 |
[% IF ( itemloo.waitingdate ) %] |
729 |
[% IF ( itemloo.reservedate ) %] |
787 |
[% itemloo.waitingdate | $KohaDates %] |
730 |
[% IF ( itemloo.nocancel ) %] |
|
|
731 |
Can't be cancelled when item is in transit |
788 |
[% ELSE %] |
732 |
[% ELSE %] |
789 |
[% IF ( itemloo.reservedate ) %] |
733 |
[% IF ( itemloo.waitingdate ) %]Waiting[% ELSE %]On hold[% END %] |
790 |
[% itemloo.reservedate | html %] |
734 |
[% IF ( itemloo.canreservefromotherbranches ) %] |
|
|
735 |
for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% itemloo.ReservedFor.borrowernumber | uri %]">[% itemloo.ReservedFor.firstname | html %] [% itemloo.ReservedFor.surname | html %]</a> |
791 |
[% END %] |
736 |
[% END %] |
792 |
[% END %]. |
737 |
[% IF ( itemloo.waitingdate ) %]at[% ELSE %]expected at[% END %] |
793 |
<a class="info cancel-hold" href="modrequest.pl?CancelBiblioNumber=[% itemloo.biblionumber | html %]&CancelBorrowerNumber=[% itemloo.ReservedFor.borrowernumber | html %]&CancelItemnumber=[% itemloo.itemnumber | html %]">Cancel hold</a> |
738 |
[% Branches.GetName( itemloo.ExpectedAtLibrary ) | html %] since |
794 |
[% END # /IF itemloo.nocancel %] |
739 |
[% IF ( itemloo.waitingdate ) %] |
795 |
[% ELSE %] |
740 |
[% itemloo.waitingdate | $KohaDates %] |
796 |
Not on hold |
741 |
[% ELSE %] |
797 |
[% END # /IF itemloo.reservedate %] |
742 |
[% IF ( itemloo.reservedate ) %] |
|
|
743 |
[% itemloo.reservedate | html %] |
744 |
[% END %] |
745 |
[% END %]. |
746 |
<a class="info cancel-hold" href="modrequest.pl?CancelBiblioNumber=[% itemloo.biblionumber | html %]&CancelBorrowerNumber=[% itemloo.ReservedFor.borrowernumber | html %]&CancelItemnumber=[% itemloo.itemnumber | html %]">Cancel hold</a> |
747 |
[% END # /IF itemloo.nocancel %] |
748 |
[% ELSE %] |
749 |
Not on hold |
750 |
[% END # /IF itemloo.reservedate %] |
798 |
|
751 |
|
799 |
[% IF itemloo.item_level_holds == "N" %] |
752 |
[% IF itemloo.item_level_holds == "N" %] |
800 |
<br/>Item level hold not allowed from OPAC |
753 |
<br/>Item level hold not allowed from OPAC |
801 |
[% ELSIF itemloo.item_level_holds == "F" %] |
754 |
[% ELSIF itemloo.item_level_holds == "F" %] |
802 |
<br/>Item level hold forced from OPAC |
755 |
<br/>Item level hold forced from OPAC |
803 |
[% END %] |
756 |
[% END %] |
804 |
|
757 |
|
805 |
[% IF ( itemloo.itemlost ) %] |
758 |
[% IF ( itemloo.itemlost ) %] |
806 |
<span class="lost">[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.itemlost', authorised_value => itemloo.itemlost ) | html %]</span> |
759 |
<span class="lost">[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.itemlost', authorised_value => itemloo.itemlost ) | html %]</span> |
807 |
[% END %] |
760 |
[% END %] |
808 |
|
761 |
|
809 |
[% IF ( itemloo.damaged ) %] |
762 |
[% IF ( itemloo.damaged ) %] |
810 |
<span class="dmg">[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.damaged', authorised_value => itemloo.damaged ) | html %]</span> |
763 |
<span class="dmg">[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.damaged', authorised_value => itemloo.damaged ) | html %]</span> |
811 |
[% END %] |
764 |
[% END %] |
812 |
|
765 |
|
813 |
[% IF ( itemloo.withdrawn ) %] |
766 |
[% IF ( itemloo.withdrawn ) %] |
814 |
<span class="wdn">[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.withdrawn', authorised_value => itemloo.withdrawn ) | html %]</span> |
767 |
<span class="wdn">[% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.withdrawn', authorised_value => itemloo.withdrawn ) | html %]</span> |
815 |
[% END %] |
768 |
[% END %] |
816 |
|
769 |
|
817 |
[% IF ( itemloo.notforloan ) %] |
770 |
[% IF ( itemloo.notforloan ) %] |
818 |
<span class="nfl">Not for loan ([% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.notforloan', authorised_value => itemloo.notforloan ) | html %])</span> |
771 |
<span class="nfl">Not for loan ([% AuthorisedValues.GetDescriptionByKohaField( kohafield => 'items.notforloan', authorised_value => itemloo.notforloan ) | html %])</span> |
819 |
[% ELSIF ( itemloo.notforloanitype ) %] |
772 |
[% END %] |
820 |
<span class="nfl">Not for loan (Itemtype not for loan)</span> |
773 |
</td> |
|
|
774 |
<td> |
775 |
[% IF (itemloo.pickup_locations_count > 0) %] |
776 |
<select name="item_pickup_[% itemloo.itemnumber | html %]" class="pickup_locations" style="width:100%;" |
777 |
data-item-id="[% itemloo.itemnumber | html %]" |
778 |
data-patron-id="[% patron.borrowernumber | html %]" |
779 |
data-pickup-location-source="item"> |
780 |
[% IF (itemloo.default_pickup_location) %] |
781 |
<option value="[% itemloo.default_pickup_location.branchcode | html %]" selected="selected">[% itemloo.default_pickup_location.branchname | html %]</option> |
782 |
[% END %] |
783 |
</select> |
821 |
[% END %] |
784 |
[% END %] |
822 |
</td> |
785 |
</td> |
823 |
</tr> |
786 |
</tr> |
824 |
[% END # / UNLESS itemloo.hide %] |
787 |
[% END # / UNLESS itemloo.hide %] |
825 |
[% END # /FOREACH itemloo %] |
788 |
[% END # /FOREACH itemloo %] |
826 |
</tbody> |
789 |
</tbody> |
827 |
</table> <!-- /#requestspecific --> |
790 |
</table> <!-- /#requestspecific --> |
828 |
|
791 |
|
829 |
[% IF hiddencount %] |
792 |
[% IF ( bibitemloo.hiddencount ) %] |
830 |
<form> |
793 |
<form> |
831 |
<p class="hiddencount"> |
794 |
<p class="hiddencount"> |
832 |
<a href="request.pl?biblionumber=[% biblio.biblionumber | uri %]&borrowernumber=[% borrowernumber | uri %]&showallitems=1">Show all items ([% biblio.hiddencount | html %] hidden)</a> |
795 |
<a href="request.pl?biblionumber=[% bibitemloo.biblionumber | uri %]&borrowernumber=[% bibitemloo.borrowernumber | uri %]&showallitems=1">Show all items ([% bibitemloo.hiddencount | html %] hidden)</a> |
833 |
</p> |
796 |
</p> |
834 |
</form> |
797 |
</form> |
835 |
[% END # /IF hiddencount %] |
798 |
[% END # /IF bibitemloo.hiddencount %] |
|
|
799 |
[% END # /FOREACH bibitemloo %] |
836 |
|
800 |
|
837 |
[% ELSE # /UNLESS multi_hold %] |
801 |
[% ELSE # /UNLESS multi_hold %] |
838 |
|
802 |
|
839 |
<table id="requesttitles"> |
803 |
<table id="requesttitles"> |
840 |
<tr> |
804 |
<tr> |
841 |
<th> </th> |
805 |
<th> </th> |
842 |
<th>Pickup location</th> |
|
|
843 |
<th>Title</th> |
806 |
<th>Title</th> |
844 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
807 |
[% UNLESS ( item_level_itypes ) %] |
845 |
<th>Item type</th> |
808 |
<th>Item type</th> |
846 |
[% END %] |
809 |
[% END %] |
847 |
<th>Priority</th> |
810 |
<th>Priority</th> |
848 |
<th>Information</th> |
811 |
<th>Information</th> |
|
|
812 |
<th>Pickup location</th> |
849 |
</tr> |
813 |
</tr> |
850 |
[% FOREACH biblioloo IN biblioloop %] |
814 |
[% FOREACH biblioloo IN biblioloop %] |
851 |
[% IF ( biblioloo.warn ) %] |
815 |
[% IF ( biblioloo.warn ) %] |
Lines 855-882
Link Here
|
855 |
[% END %] |
819 |
[% END %] |
856 |
<td> |
820 |
<td> |
857 |
[% UNLESS ( biblioloo.warn ) %] |
821 |
[% UNLESS ( biblioloo.warn ) %] |
858 |
<input class="multi_hold_item_checkbox" type="checkbox" checked="checked" title="[% biblioloo.biblionumber | html %]"/> |
822 |
<input class="multi_hold_item_checkbox" type="checkbox" checked="checked" title="[% biblioloo.biblionumber | html %]"/> |
859 |
[% END %] |
823 |
</td> |
860 |
</td> |
|
|
861 |
<td> |
862 |
[% UNLESS ( biblioloo.none_avail || biblioloo.noitems ) %] |
863 |
<select name="pickup_[% biblioloo.biblionumber | html %]" |
864 |
class="multi_pickup_select" |
865 |
data-biblio-id="[% biblioloo.biblionumber | html %]" |
866 |
data-patron-id="[% patron.borrowernumber | html %]" |
867 |
data-pickup-locations='[% biblioloo.pickup_locations_codes.json | $raw %]'> |
868 |
<option value=""></option> |
869 |
[% FOREACH pickup_location IN biblioloo.pickup_locations %] |
870 |
<option value="[% pickup_location.branchcode | html %]">[% pickup_location.branchname | html %]</option> |
871 |
[% END %] |
872 |
</select> |
873 |
[% END %] |
824 |
[% END %] |
874 |
</td> |
|
|
875 |
<td> |
825 |
<td> |
876 |
<ul> |
826 |
<ul> |
877 |
<li> |
827 |
<li> |
878 |
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]">[% biblioloo.title | html %]</a> |
828 |
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber | uri %]">[% biblioloo.title | html %]</a> |
879 |
[% IF biblioloo.author %] by [% biblioloo.author | html %][% END %] |
|
|
880 |
</li> |
829 |
</li> |
881 |
[% IF ( biblioloo.publicationyear ) %] |
830 |
[% IF ( biblioloo.publicationyear ) %] |
882 |
<li> |
831 |
<li> |
Lines 888-896
Link Here
|
888 |
<span class="not_holdable" title="[% biblioloo.biblionumber | html %]"></span> |
837 |
<span class="not_holdable" title="[% biblioloo.biblionumber | html %]"></span> |
889 |
[% END %] |
838 |
[% END %] |
890 |
</td> |
839 |
</td> |
891 |
[% UNLESS Koha.Preference('item-level_itypes') %] |
840 |
[% UNLESS ( item_level_itypes ) %] |
892 |
<td> |
841 |
<td> |
893 |
<img src="[% biblioloo.itemtype.image_location | html %]" alt="[% biblioloo.itemtype.translated_description | html %]" title="[% biblioloo.itemtype.translated_description | html %]" /> |
842 |
<img src="[% biblioloo.imageurl | html %]" alt="[% biblioloo.itypename | html %]" title="[% biblioloo.itypename | html %]" /> |
894 |
</td> |
843 |
</td> |
895 |
[% END %] |
844 |
[% END %] |
896 |
<td>[% biblioloo.rank | html %]</td> |
845 |
<td>[% biblioloo.rank | html %]</td> |
Lines 924-929
Link Here
|
924 |
[% END %] |
873 |
[% END %] |
925 |
[% END %] |
874 |
[% END %] |
926 |
</td> |
875 |
</td> |
|
|
876 |
<td> |
877 |
[% UNLESS ( biblioloo.none_avail || biblioloo.noitems ) %] |
878 |
<select name="pickup_[% biblioloo.biblionumber | html %]" |
879 |
class="multi_pickup_select" |
880 |
data-biblio-id="[% biblioloo.biblionumber | html %]" |
881 |
data-patron-id="[% patron.borrowernumber | html %]" |
882 |
data-pickup-locations='[% biblioloo.pickup_locations_codes.json | $raw %]'> |
883 |
<option value=""></option> |
884 |
[% FOREACH pickup_location IN biblioloo.pickup_locations %] |
885 |
<option value="[% pickup_location.branchcode | html %]">[% pickup_location.branchname | html %]</option> |
886 |
[% END %] |
887 |
</select> |
888 |
[% END %] |
889 |
</td> |
927 |
</tr> |
890 |
</tr> |
928 |
[% END # /FOREACH biblioloo %] |
891 |
[% END # /FOREACH biblioloo %] |
929 |
</table> <!-- /#requesttitles --> |
892 |
</table> <!-- /#requesttitles --> |
Lines 932-954
Link Here
|
932 |
|
895 |
|
933 |
<fieldset class="action"> |
896 |
<fieldset class="action"> |
934 |
[% IF ( patron AND patron.borrowernumber ) %] |
897 |
[% IF ( patron AND patron.borrowernumber ) %] |
935 |
[% IF ( multi_hold ) %] |
898 |
[% IF ( override_required ) %] |
936 |
[% IF ( override_required ) %] |
899 |
<button type="submit" class="btn btn-default warning"><i class="fa fa-exclamation-triangle "></i> Place holds</button> |
937 |
<button type="submit" class="btn btn-default warning" id="lientype"><i class="fa fa-exclamation-triangle "></i> Place holds</button> |
900 |
[% ELSIF ( none_available ) %] |
938 |
[% ELSIF ( no_bibs_available ) %] |
901 |
<button class="btn btn-default" type="submit">Place holds</button> |
939 |
<button type="submit" class="btn btn-default btn-disabled" disabled="disabled" id="lientype">Place holds</button> |
|
|
940 |
[% ELSIF ( none_available ) %] |
941 |
<button type="submit" class="btn btn-default" id="lientype">Place holds</button> |
942 |
[% ELSE %] |
943 |
<button type="submit" class="btn btn-default" id="multi_hold_submit">Place holds</button> |
944 |
[% END %] |
945 |
[% ELSE %] |
902 |
[% ELSE %] |
946 |
[% IF ( override_required ) %] |
903 |
[% IF ( multi_hold ) %] |
947 |
<button type="submit" class="btn btn-default warning" id="lientype"><i class="fa fa-exclamation-triangle "></i> Place hold</button> |
904 |
<button type="submit" class="btn btn-default" id="multi_hold_submit">Place holds</button> |
948 |
[% ELSIF ( none_available ) %] |
|
|
949 |
<button type="submit" class="btn btn-default btn-disabled" disabled="disabled" id="lientype">Place hold</button> |
950 |
[% ELSE %] |
905 |
[% ELSE %] |
951 |
<button type="submit" class="btn btn-default" id="lientype" id="lientype">Place hold</button> |
906 |
<button type="submit" class="btn btn-default">Place hold</button> |
952 |
[% END %] |
907 |
[% END %] |
953 |
[% END %] |
908 |
[% END %] |
954 |
[% END # /IF patron %] |
909 |
[% END # /IF patron %] |
Lines 975-983
Link Here
|
975 |
[% IF ( reserveloop ) %] |
930 |
[% IF ( reserveloop ) %] |
976 |
<form id="existing_holds" name="T[% time | html %]" action="modrequest.pl" method="post" style="display:block"> |
931 |
<form id="existing_holds" name="T[% time | html %]" action="modrequest.pl" method="post" style="display:block"> |
977 |
[% IF ( multi_hold ) %] |
932 |
[% IF ( multi_hold ) %] |
978 |
[% FOREACH biblionumber IN biblionumbers %] |
933 |
<input type = "hidden" name="biblionumbers" value="[% biblionumbers | html %]"/> |
979 |
<input type="hidden" name="biblionumber" value="[% biblionumber | html %]"/> |
|
|
980 |
[% END %] |
981 |
[% END %] |
934 |
[% END %] |
982 |
|
935 |
|
983 |
[% IF enqueued %] |
936 |
[% IF enqueued %] |
Lines 989-998
Link Here
|
989 |
|
942 |
|
990 |
<h2>Existing holds</h2> |
943 |
<h2>Existing holds</h2> |
991 |
<div id="toolbar" class="btn-toolbar"> |
944 |
<div id="toolbar" class="btn-toolbar"> |
992 |
<input type="submit" name="submit" class="principal" value="Update hold(s)" /> <button class="cancel_selected_holds" data-bulk="true"></button> |
945 |
<input type="submit" name="submit" value="Update hold(s)" /> <button class="cancel_selected_holds" data-bulk="true"></button> |
993 |
<fieldset id="cancellation-reason-fieldset" class="action"> |
946 |
<fieldset id="cancellation-reason-fieldset" class="action"> |
994 |
[% SET hold_cancellation = AuthorisedValues.GetAuthValueDropbox('HOLD_CANCELLATION') %] |
947 |
[% SET hold_cancellation = AuthorisedValues.GetAuthValueDropbox('HOLD_CANCELLATION') %] |
995 |
[% IF hold_cancellation.count %] |
948 |
[% IF hold_cancellation %] |
996 |
<label for="cancellation-reason">Cancellation reason: </label> |
949 |
<label for="cancellation-reason">Cancellation reason: </label> |
997 |
<select class="cancellation-reason" name="cancellation-reason" id="cancellation-reason"> |
950 |
<select class="cancellation-reason" name="cancellation-reason" id="cancellation-reason"> |
998 |
<option value="">No reason given</option> |
951 |
<option value="">No reason given</option> |
Lines 1115-1121
Link Here
|
1115 |
[% IF i %] |
1068 |
[% IF i %] |
1116 |
[% ItemTypes.GetDescription( i ) | html %] |
1069 |
[% ItemTypes.GetDescription( i ) | html %] |
1117 |
[% ELSE %] |
1070 |
[% ELSE %] |
1118 |
<span>Any item type</span> |
1071 |
Any item type |
1119 |
[% END %] |
1072 |
[% END %] |
1120 |
</h5> |
1073 |
</h5> |
1121 |
|
1074 |
|
Lines 1178-1184
Link Here
|
1178 |
|
1131 |
|
1179 |
<fieldset class="action"> |
1132 |
<fieldset class="action"> |
1180 |
[% SET hold_cancellation = AuthorisedValues.GetAuthValueDropbox('HOLD_CANCELLATION') %] |
1133 |
[% SET hold_cancellation = AuthorisedValues.GetAuthValueDropbox('HOLD_CANCELLATION') %] |
1181 |
[% IF hold_cancellation.count %] |
1134 |
[% IF hold_cancellation %] |
1182 |
<label for="cancellation-reason">Cancellation reason: </label> |
1135 |
<label for="cancellation-reason">Cancellation reason: </label> |
1183 |
<select class="cancellation-reason" name="modal-cancellation-reason" id="modal-cancellation-reason"> |
1136 |
<select class="cancellation-reason" name="modal-cancellation-reason" id="modal-cancellation-reason"> |
1184 |
<option value="">No reason given</option> |
1137 |
<option value="">No reason given</option> |
Lines 1200-1222
Link Here
|
1200 |
|
1153 |
|
1201 |
[% MACRO jsinclude BLOCK %] |
1154 |
[% MACRO jsinclude BLOCK %] |
1202 |
[% INCLUDE 'datatables.inc' %] |
1155 |
[% INCLUDE 'datatables.inc' %] |
1203 |
[% INCLUDE 'calendar.inc' %] |
|
|
1204 |
[% INCLUDE 'columns_settings.inc' %] |
1156 |
[% INCLUDE 'columns_settings.inc' %] |
1205 |
[% Asset.js("lib/hc-sticky.js") | $raw %] |
1157 |
[% Asset.js("lib/hc-sticky.js") | $raw %] |
|
|
1158 |
[% Asset.js("js/circ-patron-search-results.js") | $raw %] |
1206 |
[% INCLUDE 'select2.inc' %] |
1159 |
[% INCLUDE 'select2.inc' %] |
1207 |
[% Asset.js("js/holds.js") | $raw%] |
1160 |
[% Asset.js("js/holds.js") | $raw%] |
1208 |
|
1161 |
[% INCLUDE 'calendar.inc' %] |
1209 |
[% SET url_biblio_params = "biblionumber=" _ biblionumbers.join("&biblionumber=") %] |
|
|
1210 |
[% IF multi_hold %] |
1211 |
[% SET url_biblio_params = url_biblio_params _ "&multi_hold=1" %] |
1212 |
[% END %] |
1213 |
|
1214 |
<script> |
1162 |
<script> |
1215 |
var Sticky; |
1163 |
var Sticky; |
1216 |
var biblionumbers = [[% biblionumbers.join(', ') | $raw %]]; |
1164 |
var biblionumber = "[% biblionumber | $raw %]"; |
1217 |
var borrowernumber = "[% patron.borrowernumber | $raw %]"; |
1165 |
var borrowernumber = "[% patron.borrowernumber | $raw %]"; |
1218 |
var patron_homebranch = "[% To.json( Branches.GetName( patron.branchcode ) ) | $raw %]"; |
1166 |
var patron_homebranch = "[% To.json( Branches.GetName( patron.branchcode ) ) | $raw %]"; |
1219 |
var override_items = {[% FOREACH biblio IN biblioloop %][% FOREACH itemloo IN biblio.itemloop %][% IF ( itemloo.override ) %] |
1167 |
var override_items = {[% FOREACH bibitemloo IN bibitemloop %][% FOREACH itemloo IN bibitemloo.itemloop %][% IF ( itemloo.override ) %] |
1220 |
[% itemloo.itemnumber | html %]: { |
1168 |
[% itemloo.itemnumber | html %]: { |
1221 |
homebranch: "[% To.json( Branches.GetName( itemloo.homebranch ) ) | $raw %]", |
1169 |
homebranch: "[% To.json( Branches.GetName( itemloo.homebranch ) ) | $raw %]", |
1222 |
holdallowed: "[% itemloo.holdallowed | html %]" |
1170 |
holdallowed: "[% itemloo.holdallowed | html %]" |
Lines 1238-1243
Link Here
|
1238 |
} |
1186 |
} |
1239 |
|
1187 |
|
1240 |
var MSG_CANCEL_SELECTED = _("Cancel selected (%s)"); |
1188 |
var MSG_CANCEL_SELECTED = _("Cancel selected (%s)"); |
|
|
1189 |
columns_settings_borrowers_table = [% TablesSettings.GetColumns( 'circ', 'circulation', 'table_borrowers', 'json' ) | $raw %]; |
1241 |
$.fn.select2.defaults.set("width", "100%" ); |
1190 |
$.fn.select2.defaults.set("width", "100%" ); |
1242 |
$.fn.select2.defaults.set("dropdownAutoWidth", true ); |
1191 |
$.fn.select2.defaults.set("dropdownAutoWidth", true ); |
1243 |
|
1192 |
|
Lines 1251-1270
Link Here
|
1251 |
} |
1200 |
} |
1252 |
}); |
1201 |
}); |
1253 |
|
1202 |
|
1254 |
if( $("#circ_holds_select").length > 0 ){ |
1203 |
[% SET active = clubs ? 1 : 0 %] |
1255 |
[% SET active = clubs ? 1 : 0 %] |
1204 |
$('#circ_holds_select').tabs({ |
1256 |
/* Set active tab based on whether a club search was submitted */ |
1205 |
active: [% active | $raw %], |
1257 |
var tabs = $("#circ_holds_select li:eq(" + [% active | $raw %] + ") a").tab("show"); |
1206 |
activate: function(){ |
1258 |
$( tabs[0].hash ).find("input.focus").focus(); |
1207 |
$(this).find("input.focus").focus(); |
1259 |
|
1208 |
}, |
1260 |
/* Change active focus when tabs change */ |
1209 |
create: function(){ |
1261 |
$("#circ_holds_select a[data-toggle='tab']").on("shown.bs.tab", function (e) { |
1210 |
$(this).find("input.focus").focus(); |
1262 |
active_tab = e.target.hash; |
1211 |
} |
1263 |
$( active_tab ).find("input.focus").focus(); |
1212 |
}); |
1264 |
}); |
|
|
1265 |
} |
1266 |
|
1267 |
|
1268 |
function ToggleHoldsToPlace() { |
1213 |
function ToggleHoldsToPlace() { |
1269 |
if ( $("#requestany").prop('checked') ) { |
1214 |
if ( $("#requestany").prop('checked') ) { |
1270 |
$("#holds_to_place_count").prop('disabled', false); |
1215 |
$("#holds_to_place_count").prop('disabled', false); |
Lines 1282-1288
Link Here
|
1282 |
var pickup = $("#pickup").val(); |
1227 |
var pickup = $("#pickup").val(); |
1283 |
var url = "?pickup=" + pickup; |
1228 |
var url = "?pickup=" + pickup; |
1284 |
url += "&borrowernumber=" + borrowernumber; |
1229 |
url += "&borrowernumber=" + borrowernumber; |
1285 |
url += "&biblionumber=" + biblionumbers[0]; |
1230 |
url += "&biblionumber=" + biblionumber; |
1286 |
window.location.replace(url); |
1231 |
window.location.replace(url); |
1287 |
}); |
1232 |
}); |
1288 |
[% END %] |
1233 |
[% END %] |
Lines 1302-1307
Link Here
|
1302 |
$("#club-request-form").on("submit", function() { |
1247 |
$("#club-request-form").on("submit", function() { |
1303 |
let $t = $(this); |
1248 |
let $t = $(this); |
1304 |
$('.clubalert, .holdalert').addClass('hide'); |
1249 |
$('.clubalert, .holdalert').addClass('hide'); |
|
|
1250 |
let biblionumbers = [biblionumber]; |
1251 |
let biblionumbers_text; |
1305 |
const data = { |
1252 |
const data = { |
1306 |
pickup_library_id: $('select[name="pickup"]').val() |
1253 |
pickup_library_id: $('select[name="pickup"]').val() |
1307 |
}; |
1254 |
}; |
Lines 1317-1329
Link Here
|
1317 |
if($('input[name="default_patron_home"]:checked').length) { |
1264 |
if($('input[name="default_patron_home"]:checked').length) { |
1318 |
data.default_patron_home = 1; |
1265 |
data.default_patron_home = 1; |
1319 |
} |
1266 |
} |
|
|
1267 |
if($('input[name="biblionumbers"]').length) { |
1268 |
biblionumbers_text = $('input[name="biblionumbers"]').val(); |
1269 |
biblionumbers = biblionumbers_text.replace(/\/$/, '').split('/') |
1270 |
} |
1320 |
|
1271 |
|
1321 |
const count = $('input[name="holds_to_place_count"]').length?$('input[name="holds_to_place_count"]').val():1; |
1272 |
const count = $('input[name="holds_to_place_count"]').length?$('input[name="holds_to_place_count"]').val():1; |
1322 |
var newloc = 'request.pl?'; |
|
|
1323 |
biblionumbers.forEach(function (biblionumber) { |
1324 |
newloc += '&biblionumber=' + biblionumber; |
1325 |
}); |
1326 |
|
1327 |
biblionumbers.forEach(function(biblionumber) { |
1273 |
biblionumbers.forEach(function(biblionumber) { |
1328 |
data.biblio_id = biblionumber; |
1274 |
data.biblio_id = biblionumber; |
1329 |
let options = { |
1275 |
let options = { |
Lines 1335-1341
Link Here
|
1335 |
for(let i = 0; i < count; i++) { |
1281 |
for(let i = 0; i < count; i++) { |
1336 |
$.ajax(options) |
1282 |
$.ajax(options) |
1337 |
.then(function(result) { |
1283 |
.then(function(result) { |
1338 |
document.location = newloc; |
1284 |
let url = 'request.pl?biblionumber='+biblionumber; |
|
|
1285 |
if(biblionumbers_text) { |
1286 |
url = 'request.pl?biblionumbers='+biblionumbers_text; |
1287 |
} |
1288 |
document.location = url; |
1339 |
}) |
1289 |
}) |
1340 |
.fail(function(err) { |
1290 |
.fail(function(err) { |
1341 |
var message = err.responseJSON.error; |
1291 |
var message = err.responseJSON.error; |
Lines 1430-1435
Link Here
|
1430 |
|
1380 |
|
1431 |
function checkMultiHold() { |
1381 |
function checkMultiHold() { |
1432 |
|
1382 |
|
|
|
1383 |
var biblionumbers = ""; |
1433 |
var selected_bibs = $(".multi_hold_item_checkbox:checked"); |
1384 |
var selected_bibs = $(".multi_hold_item_checkbox:checked"); |
1434 |
if ( selected_bibs.length > 0 ) { |
1385 |
if ( selected_bibs.length > 0 ) { |
1435 |
// there are biblios selected in the form! |
1386 |
// there are biblios selected in the form! |
Lines 1442-1447
Link Here
|
1442 |
} |
1393 |
} |
1443 |
else { |
1394 |
else { |
1444 |
var bibnum = $(this).attr("title"); |
1395 |
var bibnum = $(this).attr("title"); |
|
|
1396 |
biblionumbers += bibnum + "/"; |
1445 |
} |
1397 |
} |
1446 |
}); |
1398 |
}); |
1447 |
if ( pickup_not_set > 0 ) { |
1399 |
if ( pickup_not_set > 0 ) { |
Lines 1454-1466
Link Here
|
1454 |
return false; |
1406 |
return false; |
1455 |
} |
1407 |
} |
1456 |
|
1408 |
|
|
|
1409 |
var badSpans = $(".not_holdable"); |
1410 |
var badBibs = ""; |
1411 |
$(badSpans).each(function() { |
1412 |
var bibnum = $(this).attr("title"); |
1413 |
badBibs += bibnum + "/"; |
1414 |
}); |
1415 |
|
1416 |
$("#multi_hold_bibs").val(biblionumbers); |
1417 |
$("#bad_bibs").val(badBibs); |
1418 |
|
1457 |
$('#hold-request-form').preventDoubleFormSubmit(); |
1419 |
$('#hold-request-form').preventDoubleFormSubmit(); |
1458 |
|
1420 |
|
1459 |
return true; |
1421 |
return true; |
1460 |
} |
1422 |
} |
1461 |
|
1423 |
|
1462 |
$(document).ready(function() { |
1424 |
$(document).ready(function() { |
1463 |
|
|
|
1464 |
$("#always_show_holds").change(function(){ |
1425 |
$("#always_show_holds").change(function(){ |
1465 |
if( $(this).prop('checked') ){ |
1426 |
if( $(this).prop('checked') ){ |
1466 |
document.cookie = 'always_show_holds=DO'; |
1427 |
document.cookie = 'always_show_holds=DO'; |
Lines 1548-1555
Link Here
|
1548 |
$("#cancelModalConfirmBtn").on("click",function(e) { |
1509 |
$("#cancelModalConfirmBtn").on("click",function(e) { |
1549 |
let link; |
1510 |
let link; |
1550 |
if(cancel_link.data('bulk')) { |
1511 |
if(cancel_link.data('bulk')) { |
1551 |
[% SET data_url = 'biblionumber=' _ biblionumbers.join('&biblionumber=') %] |
1512 |
[% IF biblionumbers %] |
1552 |
link = `request.pl?[% data_url | url %]&action=cancelBulk&ids=${$('.holds_table .select_hold:checked').toArray().map(el => $(el).data('id')).join(',')}`; |
1513 |
link = `request.pl?biblionumbers=[% biblionumbers | url %]&action=cancelBulk&ids=${$('.holds_table .select_hold:checked').toArray().map(el => $(el).data('id')).join(',')}`; |
|
|
1514 |
[% ELSE %] |
1515 |
link = `request.pl?biblionumber=[% biblionumber | url %]&action=cancelBulk&ids=${$('.holds_table .select_hold:checked').toArray().map(el => $(el).data('id')).join(',')}`; |
1516 |
[% END %] |
1553 |
} else { |
1517 |
} else { |
1554 |
let borrowernumber = cancel_link.data('borrowernumber'); |
1518 |
let borrowernumber = cancel_link.data('borrowernumber'); |
1555 |
let biblionumber = cancel_link.data('biblionumber'); |
1519 |
let biblionumber = cancel_link.data('biblionumber'); |
Lines 1566-1576
Link Here
|
1566 |
|
1530 |
|
1567 |
[% UNLESS ( patron || patron.borrowernumber || borrowers || noitems || nobiblio ) %] |
1531 |
[% UNLESS ( patron || patron.borrowernumber || borrowers || noitems || nobiblio ) %] |
1568 |
[% IF ( PatronAutoComplete ) %] |
1532 |
[% IF ( PatronAutoComplete ) %] |
1569 |
$( "#search_patron_filter" ).autocomplete({ |
1533 |
$( "#patron" ).autocomplete({ |
1570 |
source: "/cgi-bin/koha/circ/ysearch.pl", |
1534 |
source: "/cgi-bin/koha/circ/ysearch.pl", |
1571 |
minLength: 3, |
1535 |
minLength: 3, |
1572 |
select: function( event, ui ) { |
1536 |
select: function( event, ui ) { |
1573 |
document.location.href = '/cgi-bin/koha/reserve/request.pl?[% url_biblio_params | url %]&borrowernumber=' + ui.item.borrowernumber; |
1537 |
$( "#patron" ).val( ui.item.cardnumber ); |
|
|
1538 |
$( "#holds_patronsearch" ).submit(); |
1539 |
return false; |
1574 |
} |
1540 |
} |
1575 |
}) |
1541 |
}) |
1576 |
.data( "ui-autocomplete" )._renderItem = function( ul, item ) { |
1542 |
.data( "ui-autocomplete" )._renderItem = function( ul, item ) { |
Lines 1597-1603
Link Here
|
1597 |
}; |
1563 |
}; |
1598 |
[% END %] |
1564 |
[% END %] |
1599 |
[% END %] |
1565 |
[% END %] |
1600 |
|
|
|
1601 |
Sticky = $("#toolbar"); |
1566 |
Sticky = $("#toolbar"); |
1602 |
Sticky.hcSticky({ |
1567 |
Sticky.hcSticky({ |
1603 |
stickTo: "#existing_holds", |
1568 |
stickTo: "#existing_holds", |
Lines 1648-1670
Link Here
|
1648 |
} |
1613 |
} |
1649 |
return false; |
1614 |
return false; |
1650 |
}); |
1615 |
}); |
1651 |
}); |
|
|
1652 |
</script> |
1653 |
|
1616 |
|
1654 |
<script> |
|
|
1655 |
table_settings = [% TablesSettings.GetColumns( 'circ', 'circulation', 'table_borrowers', 'json' ) | $raw %]; |
1656 |
</script> |
1657 |
|
1658 |
[% PROCESS patron_search_js table_id => 'table_borrowers', categories => categories, libraries => libraries, extended_attribute_types => attribute_type_codes, columns => columns, open_on_row_click => 1, on_click_url => '/cgi-bin/koha/reserve/request.pl?' _ url_biblio_params, redirect_if_one_result => 1, redirect_url => '/cgi-bin/koha/reserve/request.pl?' _ url_biblio_params, redirect_if_attribute_equal => 'cardnumber' %] |
1659 |
<script> |
1660 |
$(document).ready(function() { |
1661 |
$("#holds_patronsearch").on("submit", filter); |
1662 |
}); |
1617 |
}); |
1663 |
$('.printholdslip').click(function(){ |
|
|
1664 |
var reserve_id = $(this).attr('data-reserve_id'); |
1665 |
window.open("/cgi-bin/koha/circ/hold-transfer-slip.pl?reserve_id=" + reserve_id); |
1666 |
return false; |
1667 |
}) |
1668 |
</script> |
1618 |
</script> |
1669 |
[% END %] |
1619 |
[% END %] |
1670 |
|
1620 |
|
1671 |
- |
|
|