Bug 14733: Replace 'priority' with 'estimated priority'
[koha.git] / koha-tmpl / intranet-tmpl / prog / en / modules / reserve / request.tt
1 [% USE KohaDates %]
2 [% INCLUDE 'doc-head-open.inc' %]
3 [% UNLESS ( multi_hold ) %]
4     <title>Koha &rsaquo; Circulation &rsaquo; Holds &rsaquo; Place a hold on [% title |html %]</title>
5 [% ELSE %]
6     <title>Koha &rsaquo; Circulation &rsaquo; Holds &rsaquo; Confirm holds</title>
7 [% END %]
8 [% INCLUDE 'doc-head-close.inc' %]
9 <link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
10 [% INCLUDE 'datatables.inc' %]
11 [% INCLUDE 'calendar.inc' %]
12 <script type="text/javascript">
13     // <![CDATA[
14 var MSG_CONFIRM_DELETE_HOLD   = _("Are you sure you want to cancel this hold?");
15 var patron_homebranch = "[% borrower_branchname |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]";
16 var override_items = {[% FOREACH bibitemloo IN bibitemloop %][% FOREACH itemloo IN bibitemloo.itemloop %][% IF ( itemloo.override ) %]
17     [% itemloo.itemnumber %]: {
18         homebranch: "[% itemloo.homebranchname |replace("'", "\'") |replace('"', '\"') |replace('\n', '\\n') |replace('\r', '\\r') %]",
19         holdallowed: [% itemloo.holdallowed %]
20     },
21 [% END %][% END %][% END %]
22 };
23 var MSG_NO_ITEMS_AVAILABLE = _("A hold cannot be requested on any of these items.");
24
25 $(document).ready(function() {
26     [% IF AutoResumeSuspendedHolds %]
27         $(".suspend_until_datepicker, .datepickerfrom, .datepickerto").datepicker("option", "minDate", 1);
28     [% END %]
29
30     var table = $("#table_borrowers").dataTable($.extend(true, {}, dataTablesDefaults, {
31         "aoColumnDefs": [
32             { "aTargets": [ 0 ], "bSortable": false, "bSearchable": false },
33         ],
34         "aaSorting": [[ 2, "asc" ]],
35         "sDom": "t",
36         "iDisplayLength": -1
37     }));
38     $(table).find('tbody tr').filter(':has(:radio:checked)').end().click(function(event) {
39         $('#table_borrowers tbody tr').removeClass('selected');
40         $(this).addClass('selected');
41         if (event.target.type !== 'radio') {
42             $(':radio', this).attr('checked', 'true')
43         }
44     });
45     var my_table = $("#requestspecific").dataTable($.extend(true, {}, dataTablesDefaults, {
46         'bPaginate': false,
47         "sDom": '<"top pager"ilf>t',
48         "aoColumnDefs": [
49             { "sType": "title-string", "aTargets" : [ "title-string" ] }
50         ]
51     }));
52
53     //Override fieldset styling for dataTables search box
54     $("div.top.pager").css("margin-left","1em");
55     $(".dataTables_filter label").css({
56         "width":"auto",
57         "margin-right":"0em"
58     });
59
60 });
61
62 function check() {
63         var msg = "";
64         var count_reserv = 0;
65         var alreadyreserved = 0;
66
67     // check if we have checkitem form
68     if (document.form.checkitem){
69         for (i=0;i<document.form.checkitem.length;i++){
70             if (document.form.checkitem[i].checked == true) {
71                                 count_reserv++ ;
72                         }
73         }
74         // for only one item, check the checkitem without consider the loop checkitem
75         if (i==0){
76                     if (document.form.checkitem.checked == true) {
77                             count_reserv++;
78                     }
79             }
80     }
81
82     if (document.form.request.checked == true){
83                 count_reserv++ ;
84     }
85
86     if (document.form.alreadyreserved && document.form.alreadyreserved.value == "1"){
87                  alreadyreserved++ ;
88     }
89
90     if (count_reserv == "0"){
91                 msg += (_("- Please select an item to place a hold") + "\n");
92     }
93     if (count_reserv >= "2"){
94                 msg += (_("- You may only place a hold on one item at a time") + "\n");
95     }
96
97     if (alreadyreserved > "0"){
98                 msg += (_("- This patron had already placed a hold on this item") + "\n" + _("Please cancel the previous hold first") + "\n");
99     }
100
101         if (msg == "") return(true);
102         else    {
103                 alert(msg);
104                 return(false);
105         }
106 }
107
108 function checkMultiHold() {
109     var spans = $(".multi_hold_item");
110     if ($(spans).size() == 0) {
111         alert(MSG_NO_ITEMS_AVAILABLE);
112         return false;
113     }
114
115     var biblionumbers = "";
116     $(spans).each(function() {
117         var bibnum = $(this).attr("title");
118         biblionumbers += bibnum + "/";
119     });
120
121     var badSpans = $(".not_holdable");
122     var badBibs = "";
123     $(badSpans).each(function() {
124         var bibnum = $(this).attr("title");
125         badBibs += bibnum + "/";
126     });
127
128     $("#multi_hold_bibs").val(biblionumbers);
129     $("#bad_bibs").val(badBibs);
130
131     return true;
132 }
133
134  $(document).ready(function() {
135     $("input.needsoverride").click(function() { // This must be before the radio button/checkbox switch logic
136         var itemnumber = this.value;
137         var msg = '';
138
139         switch (override_items[itemnumber].holdallowed) {
140             case 0: msg = _("This item normally cannot be put on hold."); break;
141             case 1: msg = _("This item normally cannot be put on hold except for patrons from %s.").format(override_items[itemnumber].homebranch); break;
142         }
143
144         msg += "\n\n" + _("Place hold on this item?");
145
146         return confirm(msg);
147     });
148     $("input.warning").click(function() {
149         return confirm( _("None of these items can normally be put on hold for this patron.") + "\n\n" + _("Place hold?") );
150     });
151         $("#requestany").click(function() {
152                 if(this.checked){
153                 $("input[name=checkitem]").each(function() {
154             $(this).removeAttr("checked");
155                 });
156                 }
157         });
158         $("input[name=checkitem]").click(function() {
159                 onechecked = 0;
160                 $("input[name=checkitem]").each(function() {
161                         if(this.checked){
162                                 onechecked = 1;
163                         }
164                 });
165                 if(onechecked == 1){
166             $("#requestany").removeAttr("checked");
167                 } else {
168                         $("#requestany").attr("checked","checked");
169                 }
170         });
171
172     $(".clear-date").on("click",function(e){
173         e.preventDefault();
174         var fieldID = this.id.replace("clear-date-","");
175         $("#" + fieldID).val("");
176     });
177
178     $('#hold-request-form').preventDoubleFormSubmit();
179
180 [% UNLESS ( borrowernumber || borrowers || noitems ) %]
181     [% IF ( CircAutocompl ) %]
182     $( "#patron" ).autocomplete({
183         source: "/cgi-bin/koha/circ/ysearch.pl",
184         minLength: 3,
185         select: function( event, ui ) {
186             $( "#patron" ).val( ui.item.cardnumber );
187             $( "#holds_patronsearch" ).submit();
188             return false;
189         }
190     })
191     .data( "ui-autocomplete" )._renderItem = function( ul, item ) {
192         return $( "<li></li>" )
193         .data( "ui-autocomplete-item", item )
194         .append( "<a>" + item.surname + ", " + item.firstname +
195                  " (" + item.cardnumber + ") <small>" + item.address +
196                  " " + item.city + " " + item.zipcode + " " +
197                  item.country + "</small></a>" )
198         .appendTo( ul );
199     };
200     [% END %]
201 [% END %]
202
203  });
204
205 // ]]>
206 </script>
207 </head>
208 <body id="circ_request" class="catalog">
209 [% INCLUDE 'header.inc' %]
210 [% INCLUDE 'circ-search.inc' %]
211
212 [% UNLESS ( multi_hold ) %]
213     <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/catalogue/search.pl">Catalog</a> &rsaquo; <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblionumber %]">[% title |html %]</a> &rsaquo; Place a hold on [% title |html %]</div>
214 [% ELSE %]
215     <div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/catalogue/search.pl">Catalog</a> &rsaquo; Confirm holds</div>
216 [% END %]
217
218  <div id="doc3" class="yui-t2">
219
220    <div id="bd">
221         <div id="yui-main">
222         <div class="yui-b">
223 [% IF ( noitems ) %]
224     <div class="dialog alert">
225     [%IF (multi_hold) %]
226         <strong>Cannot place hold:</strong> one or more records without items attached.
227     [% ELSE %]
228         <strong>Cannot place hold:</strong> this record has no items attached.
229     [% END %]
230     </ div>
231 [% ELSE %]
232   [% IF ( messagetransfert ) %]
233                 <div class="dialog message">
234                                 <h2>Hold found for ([% nextreservtitle %]), please transfer</h2>
235                         <p>Hold placed by : <strong> [% nextreservsurname %] [% nextreservfirstname %]</strong> at : <strong> [% branchname %] </strong>, Please transfer this item.
236                         </p>
237                         <form name="cancelReservewithtransfert" action="branchreserves.pl" method="post">
238                                 <input type="submit" class="button" />
239                         </form>
240                 </div>
241   [% END %]
242
243   [% UNLESS ( multi_hold ) %]
244     <h1>Place a hold on [% INCLUDE 'biblio-default-view.inc' %][% title |html %]</a></h1>
245   [% ELSE %]
246     <h1>Confirm holds</h1>
247   [% END %]
248
249   [% UNLESS ( borrowernumber ) %]
250     [% IF ( messageborrower ) %]
251       <div class="dialog alert"><h3>Patron not found</h3><p>No patron with this name, please, try another</p> </div>
252     [% END %]
253     <form  id="holds_patronsearch" action="request.pl?biblionumber=[% biblionumber %]" method="post">
254         [% UNLESS borrowers %]
255             <fieldset class="brief">
256                 <label for="patron">Patron: </label>
257                 <div class="hint">Enter patron card number or partial name:</div>
258                 <input type="text" size="40" id="patron" class="focus" name="findborrower" />
259                 <input type="submit" value="Search" />
260                 <input type="hidden" name="biblionumber" value="[% biblionumber %]" />
261             </fieldset>
262         [% ELSE %]
263           <fieldset>
264             <table id="table_borrowers">
265                 <thead>
266                     <tr>
267                         <th></th>
268                         <th>Name</th>
269                         <th>Cardnumber</th>
270                         <th>Category</th>
271                         <th>Library</th>
272                         <th>Address</th>
273                     </tr>
274                 </thead>
275                 <tbody>
276                     [% FOREACH borrower IN borrowers %]
277                     <tr>
278                         <td><input type="radio" name="borrowernumber" value="[% borrower.borrowernumber %]" /></td>
279                         <td>[% borrower.surname %], [% borrower.firstname %]</td>
280                         <td>[% borrower.cardnumber %]</td>
281                         <td>[% borrower.categorycode %]</td>
282                         <td>[% borrower.branchcode %]</td>
283                         <td>[% borrower.address %]</td>
284                     </tr>
285                     [% END %]
286                 </tbody>
287             </table>
288             <input type="hidden" name="biblionumber" value="[% biblionumber %]" />
289             <fieldset class="action"><input type="submit" value="Select" /></fieldset>
290           </fieldset>
291
292         [% END %]
293         [% IF ( multi_hold ) %]
294             <input type="hidden" name="multi_hold" value="[% multi_hold %]"/>
295             <input type="hidden" name="biblionumbers" value="[% biblionumbers %]"/>
296         [% END %]
297     </form>
298   [% ELSE %]
299
300 [% IF ( maxreserves || alreadyreserved || none_available || alreadypossession || ageRestricted ) %]
301     <div class="dialog alert">
302
303     [% UNLESS ( multi_hold ) %]
304       <h3>Cannot place hold</h3>
305           <ul>
306         [% IF ( maxreserves ) %]
307           <li><strong>Too many holds: </strong> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrowernumber %]">[% borrowerfirstname %] [% borrowersurname %] </a> has too many holds.</li>
308         [% END %]
309         [% IF ( ageRestricted ) %]
310           <li><strong>Age restricted</strong></li>
311         [% END %]
312         [% IF ( alreadyreserved ) %]
313           <li><a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrowernumber %]">[% borrowerfirstname %] [% borrowersurname %]</a> <strong>already has a hold</strong> on this item </li>
314         [% END %]
315         [% IF ( none_available ) %]
316           <li> <strong>No items are available</strong> to be placed on hold</li>
317         [% END %]
318         [% IF ( alreadypossession ) %]
319           <li> <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrowernumber %]">[% borrowerfirstname %] [% borrowersurname %]</a> <strong>is already in possession</strong> of one item</li>
320         [% END %]
321           </ul>
322     [% ELSE %]
323       <h3>Cannot place hold on some items</h3>
324     [% END %]
325
326     </div>
327 [% END %]
328
329 [% IF ( expiry || diffbranch ) %]
330 <div class="dialog message"><ul>
331     [% IF ( expiry ) %]
332     <li><a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrowernumber %]">[% borrowerfirstname %] [% borrowersurname %]</a>'s <strong>account has expired</strong></li>
333     [% END %]
334
335     [% IF ( diffbranch ) %]
336     <li> <strong>Pickup library is different</strong> than <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrowernumber %]">[% borrowerfirstname %] [% borrowersurname %]</a>'s home library ([% borrower_branchname %] / [% borrower_branchcode %] )</li>
337     [% END %]
338
339 </ul></div>
340 [% END %]
341
342   [% IF ( messageborrower ) %]
343    <div class="dialog alert"><h3>Patron not found:</h3> <p>Name or barcode not found. Please try an other </p></div>
344   [% END %]
345
346   <fieldset class="rows left">
347     <legend>Hold details</legend>
348         [% UNLESS ( multi_hold ) %]
349             <form action="placerequest.pl" method="post" onsubmit="return check();" name="form" id="hold-request-form">
350         [% ELSE %]
351             <form action="placerequest.pl" method="post" onsubmit="return checkMultiHold();" name="form">
352         [% END %]
353
354         <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
355         <input type="hidden" name="type" value="str8" />
356
357         [% IF ( multi_hold ) %]
358             <input type="hidden" name="multi_hold" value="[% multi_hold %]"/>
359             <input type="hidden" name="biblionumbers" id="multi_hold_bibs" value="[% biblionumbers %]"/>
360             <input type="hidden" name="bad_bibs" id="bad_bibs" value=""/>
361             <input type="hidden" name="request" value="any"/>
362             [% FOREACH biblioloo IN biblioloop %]
363               <input type="hidden" name="title_[% biblioloo.biblionumber %]" value="[% biblioloo.title |html %]"/>
364               <input type="hidden" name="rank_[% biblioloo.biblionumber %]" value="[% biblioloo.rank %]"/>
365             [% END %]
366         [% ELSE %]
367             <input type="hidden" name="biblionumber" value="[% biblionumber %]" />
368             <input type="hidden" name="title" value="[% title |html %]" />
369             <input type="hidden" name="rank-request" value="[% fixedRank %]" />
370         [% END %]
371
372        <ol> <li><span class="label">Patron:</span>
373             [% IF ( borrowernumber ) %]
374                 <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrowernumber %]">[% borrowerfirstname %] [% borrowersurname %] ([% cardnumber %])</a>
375             [% ELSE %]
376                 Not defined yet
377             [% END %]
378         </li>
379         [% UNLESS ( multi_hold ) %]
380           <li>
381               <span class="label">Estimated priority:</span>
382               <strong>[% fixedRank %]</strong>
383           </li>
384         [% END %]
385         <li>
386             <label for="holdnotes">Notes:</label>
387             <textarea id="holdnotes" name="notes" cols="30" rows="1"></textarea>
388         </li>
389         <li>
390             <label for="pickup">Pickup at:</label>
391             <select name="pickup" size="1" id="pickup">
392             [%- FOREACH branchloo IN branchloop %]
393               [% IF ( branchloo.selected ) -%]
394                 <option value="[% branchloo.branchcode %]" selected="selected">[% branchloo.branchname %]</option>
395               [%- ELSE -%]
396                 <option value="[% branchloo.branchcode %]">[% branchloo.branchname %]</option>
397               [%- END -%]
398             [%- END %]
399             </select>
400         </li>
401
402         [% IF ( reserve_in_future ) %]
403         <li>
404         <label for="from">Hold starts on date:</label>
405         <input name="reserve_date" id="from" size="10" readonly="readonly" class="datepickerfrom">
406         <a href="#" id="clear-date-from" class="clear-date">Clear date</a>
407         </li>
408         [% END %]
409
410         <li>
411         <label for="to">Hold expires on date:</label>
412         <input name="expiration_date" id="to" size="10" readonly="readonly" class="datepickerto" />
413         <a href="#" id="clear-date-to" class="clear-date">Clear date</a>
414         </li>
415
416         [% UNLESS ( multi_hold ) %]
417           <li> <label for="requestany">Place a hold on the next available item </label>
418                <input type="checkbox" id="requestany" name="request" checked="checked" value="Any" />
419                <input type="hidden" name="biblioitem" value="[% biblioitemnumber %]" />
420                <input type="hidden" name="alreadyreserved" value="[% alreadyreserved %]" />
421           </li>
422         [% END %]
423
424 </ol>
425    [% UNLESS ( multi_hold ) %]
426         <fieldset class="action">
427             [% IF ( borrowernumber ) %]
428                 [% IF ( override_required ) %]
429                     <input type="submit" class="warning" value="Place hold" />
430                 [% ELSIF ( none_available ) %]
431                     <input type="submit" disabled="disabled" value="Place hold" />
432                 [% ELSE %]
433                     <input type="submit" value="Place hold" />
434                 [% END %]
435             [% END %]
436         </fieldset>
437         [% FOREACH bibitemloo IN bibitemloop %]
438           <ol>
439             [% UNLESS ( item_level_itypes ) %]
440               <li><span class="label">Item type:</span> [% bibitemloo.description %]</li>
441             [% END %]
442
443             [% IF ( bibitemloo.publicationyear ) %]<li><span class="label">Publication year:</span> [% bibitemloo.publicationyear %]</li>[% END %]
444           </ol>
445
446         <h2 style="padding: 0 1em;">Place a hold on a specific item</h2>
447         <table id="requestspecific">
448             <thead>
449                 <tr>
450                     <th>Hold</th>
451                 [% IF ( item_level_itypes ) %]
452                     <th>Item type</th>
453                 [% END %]
454                     <th>Barcode</th>
455                     <th>Home library</th>
456                     <th>Last location</th>
457                     <th>Call no.</th>
458                     <th>Copy number</th>
459                 [% IF itemdata_enumchron %]
460                     <th>Vol no.</th>
461                 [% END %]
462                     <th class="title-string">Information</th>
463                 </tr>
464             </thead>
465             <tbody>
466             [% FOREACH itemloo IN bibitemloo.itemloop %]
467             [% UNLESS ( itemloo.hide ) %]
468                 <tr class="[% itemloo.backgroundcolor %]">
469                     <td>
470                 [% IF ( itemloo.available ) %]
471                     <input type="radio" name="checkitem" value="[% itemloo.itemnumber %]" />
472                 [% ELSIF ( itemloo.override ) %]
473                     <input type="radio" name="checkitem" class="needsoverride" value="[% itemloo.itemnumber %]" />
474                     <img src="[% interface %]/[% theme %]/img/famfamfam/silk/error.png" alt="Requires override of hold policy" />
475                 [% ELSE %]
476                     <input disabled="disabled" type="radio" name="checkitem" value="[% itemloo.itemnumber %]" />
477                     <img src="[% interface %]/[% theme %]/img/famfamfam/silk/cross.png" alt="Cannot be put on hold" />
478                 [% END %]
479                     </td>
480                 [% IF ( item_level_itypes ) %]
481                     <td>
482                     [% UNLESS ( noItemTypeImages ) %]
483                         [% IF ( itemloo.imageurl ) %]<img src="[% itemloo.imageurl %]" alt="" /> <br /> [% END %]
484                     [% END %]
485                         [% itemloo.itypename %]
486                     </td>
487                 [% END %]
488
489                     <td>
490                         [% itemloo.barcode %]
491                     </td>
492                     <td>
493                         [% itemloo.homebranchname %]
494                     </td>
495                     <td>
496                         [% itemloo.holdingbranchname %]
497                     </td>
498                     <td>
499                         [% itemloo.itemcallnumber %]
500                     </td>
501                     <td>
502                         [% IF ( itemloo.copynumber ) %][% itemloo.copynumber %][% ELSE %]&nbsp;[% END %]
503                     </td>
504                 [% IF itemdata_enumchron %]
505                     <td>
506                         [% itemloo.enumchron %]
507                     </td>
508                 [% END %]
509                     <td>
510                 [% IF ( itemloo.onloan ) %]
511                     <span title="[% itemloo.date_due %]" class="checkedout">Due [% itemloo.date_due | $KohaDates as_due_date => 1 %]</span>
512                 [% ELSE %]
513                     <span title="0000-00-00">
514                         [% IF ( itemloo.transfertwhen ) %]
515                             In transit from [% itemloo.transfertfrom %],
516                             to [% itemloo.transfertto %], since [% itemloo.transfertwhen %]
517                         [% END %]
518                     </span>
519                 [% END %]
520
521                 [% IF ( itemloo.message ) %]
522                    Unavailable (lost or missing)
523                 [% END %]
524
525                 [% IF ( itemloo.notforloan ) %]
526                    Not for loan ([% itemloo.notforloanvalue %])
527                 [% END %]
528
529                 [% IF ( itemloo.reservedate ) %]
530                     [% IF ( itemloo.nocancel ) %]
531                             Can't be cancelled when item is in transit
532                     [% ELSE %]
533                     [% IF ( itemloo.waitingdate ) %]Waiting[% ELSE %]On hold[% END %]
534                     [% IF ( itemloo.canreservefromotherbranches ) %]for <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% itemloo.ReservedForBorrowernumber %]">[% itemloo.ReservedForFirstname %] [% itemloo.ReservedForSurname %]</a>[% END %] [% IF ( itemloo.waitingdate ) %]at[% ELSE %]expected at[% END %] [% itemloo.ExpectedAtLibrary %]
535                     since
536                     [% IF ( itemloo.waitingdate ) %][% itemloo.waitingdate | $KohaDates %][% ELSE %][% IF ( itemloo.reservedate ) %][% itemloo.reservedate %][% END %][% END %]. <a class="info" href="modrequest.pl?CancelBiblioNumber=[% itemloo.biblionumber %]&amp;CancelBorrowerNumber=[% itemloo.ReservedForBorrowernumber %]&amp;CancelItemnumber=[% itemloo.itemnumber %]"  onclick="return confirmDelete(MSG_CONFIRM_DELETE_HOLD);">Cancel hold</a>
537
538                     [% END %]
539                  [% ELSE %]
540                     Not on hold
541                 [% END %]
542                     </td>
543                 </tr>
544             [% END %] <!--UNLESS item hide-->
545             [% END %] <!-- itemloop -->
546             </tbody>
547         </table>
548     [% IF ( bibitemloo.hiddencount ) %]
549         <form>
550         <p class="hiddencount"><a href="request.pl?biblionumber=[% bibitemloo.biblionumber %]&amp;borrowernumber=[% bibitemloo.borrowernumber %]&amp;showallitems=1">Show all items ([% bibitemloo.hiddencount %] hidden)</a></p>
551         </form>
552     [% END %] <!-- hiddencount -->
553     [% END %] <!-- bibitemloop -->
554
555   [% ELSE %]<!-- UNLESS multi_hold -->
556
557     <table id="requesttitles">
558       <tr>
559         <th>Title</th>
560         [% UNLESS ( item_level_itypes ) %]
561           <th>Item type</th>
562         [% END %]
563         <th>Priority</th>
564         <th>Information</th>
565       </tr>
566       [% FOREACH biblioloo IN biblioloop %]
567         [% IF ( biblioloo.warn ) %]
568           <tr class="onissue">
569         [% ELSE %]
570           <tr>
571         [% END %]
572           <td>
573             <ul>
574               <li><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber %]">[% biblioloo.title |html %]</a></li>
575               [% IF ( biblioloo.publicationyear ) %]
576                 <li><span class="label">Publication year:</span> [% biblioloo.publicationyear %]</li>
577               [% END %]
578             </ul>
579             [% UNLESS ( biblioloo.warn ) %]
580               <span class="multi_hold_item" title="[% biblioloo.biblionumber %]"></span>
581             [% ELSE %]
582               <span class="not_holdable" title="[% biblioloo.biblionumber %]"></span>
583             [% END %]
584           </td>
585           [% UNLESS ( item_level_itypes ) %]
586             <td>
587               <img src="[% biblioloo.imageurl %]" alt="[% biblioloo.itypename %]" title="[% biblioloo.itypename %]" />
588             </td>
589           [% END %]
590             <td>[% biblioloo.rank %]</td>
591           <td>
592             [% IF ( biblioloo.alreadyres ) %]
593               <ul>
594             [% ELSE %]
595               [% IF ( biblioloo.none_avail ) %]
596                 <ul>
597               [% END %]
598             [% END %]
599
600           [% IF ( biblioloo.alreadyres ) %]
601               <li><a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% borrowernumber %]">[% borrowerfirstname %] [% borrowersurname %]</a> <strong>already has a hold</strong> on this item </li>
602           [% END %]
603           [% IF ( biblioloo.none_avail ) %]
604               <li> <strong>No items are available</strong> to be placed on hold</li>
605           [% END %]
606
607             [% IF ( biblioloo.alreadyres ) %]
608               </ul>
609             [% ELSE %]
610               [% IF ( biblioloo.none_avail ) %]
611                 </ul>
612               [% END %]
613             [% END %]
614
615           </td>
616         </tr>
617       [% END %]
618     </table>
619
620   [% END %]<!-- /multi_hold -->
621
622     <fieldset class="action">
623         [% IF ( borrowernumber ) %]
624             [% IF ( override_required ) %]
625                 <input type="submit" class="warning" value="Place hold" />
626             [% ELSIF ( none_available ) %]
627                 <input type="submit" disabled="disabled" value="Place hold" />
628             [% ELSE %]
629                 <input type="submit" value="Place hold" />
630             [% END %]
631         [% END %]
632     </fieldset>
633     </form>
634         </fieldset>
635 [% END %]
636
637 [% UNLESS ( borrowernumber ) %]
638 [% IF ( reserveloop ) %]
639 <form name="T[% time %]" action="modrequest.pl" method="post">
640   [% IF ( multi_hold ) %]
641     <input type = "hidden" name="multi_hold" value="1"/>
642     <input type = "hidden" name="biblionumbers" value="[% biblionumbers %]"/>
643   [% END %]
644
645 <fieldset class="rows left">
646 <legend>Existing holds</legend>
647
648 [% FOREACH biblioloo IN biblioloop %]
649
650     [% IF ( biblioloo.reserveloop ) %]
651     <table>
652       [% IF ( multi_hold ) %]
653           <caption><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% biblioloo.biblionumber %]">[% biblioloo.title |html %]</a></caption>
654       [% END %]
655       <tr>
656         [% IF ( CAN_user_reserveforothers_modify_holds_priority ) %]
657             <th>Priority</th>
658                 <th>&nbsp;</th>
659         [% ELSE %]
660             <th>Delete?</th>
661         [% END %]
662         <th>Patron</th>
663         <th>Notes</th>
664         <th>Date</th>
665         <th>Expiration</th>
666         <th>Pickup library</th>
667         <th>Details</th>
668         [% IF ( CAN_user_reserveforothers_modify_holds_priority ) %]
669             <th><img src="[% interface %]/[% theme %]/img/go-bottom.png" border="0" alt="Toggle set to lowest priority" /></th>
670         [% END %]
671         <th>&nbsp;</th>
672     [% IF SuspendHoldsIntranet %]<th>&nbsp;</th><!-- Suspend Holds Column Header -->[% END %]
673       </tr>
674   [% FOREACH reserveloo IN biblioloo.reserveloop %]
675   [% UNLESS ( loop.odd ) %]<tr class="highlight">[% ELSE %]<tr>[% END %]
676         <td>
677           <input type="hidden" name="reserve_id" value="[% reserveloo.reserve_id %]" />
678           <input type="hidden" name="borrowernumber" value="[% reserveloo.borrowernumber %]" />
679           <input type="hidden" name="biblionumber" value="[% reserveloo.biblionumber %]" />
680           <select name="rank-request">
681               [% IF ( reserveloo.wait ) %]
682                   [% IF ( reserveloo.intransit ) %]
683                       <option value="T" selected="selected">In transit</option>
684                   [% ELSE %]
685                       <option value="W" selected="selected">Waiting</option>
686                   [% END %]
687               [% END %]
688
689               [% IF ( CAN_user_reserveforothers_modify_holds_priority ) %]
690                   [% FOREACH optionloo IN reserveloo.optionloop %]
691                       [% IF ( optionloo.selected ) %]
692                           <option value="[% optionloo.num %]" selected="selected">[% optionloo.num %]</option>
693                       [% ELSE %]
694                           <option value="[% optionloo.num %]">[% optionloo.num %]</option>
695                       [% END %]
696                   [% END %]
697               [% ELSIF !reserveloo.wait %]
698                   <option value="[% reserveloo.priority %]" selected="selected">[% reserveloo.priority %]</option>
699               [% END %]
700               <option value="del">del</option>
701           </select>
702         </td>
703
704      [% IF ( CAN_user_reserveforothers_modify_holds_priority ) %]
705         <td style="white-space:nowrap;">
706             <a title="Move hold up" href="request.pl?action=move&amp;where=up&amp;borrowernumber=[% reserveloo.borrowernumber %]&amp;biblionumber=[% reserveloo.biblionumber %]&amp;reserve_id=[% reserveloo.reserve_id %]&amp;date=[% reserveloo.date %]">
707             <img src="[% interface %]/[% theme %]/img/go-up.png" border="0" alt="Go up" />
708                 </a>
709
710                 <a title="Move hold to top" href="request.pl?action=move&amp;where=top&amp;borrowernumber=[% reserveloo.borrowernumber %]&amp;biblionumber=[% reserveloo.biblionumber %]&amp;reserve_id=[% reserveloo.reserve_id %]&amp;date=[% reserveloo.date %]">
711                     <img src="[% interface %]/[% theme %]/img/go-top.png" border="0" alt="Go top" />
712                 </a>
713
714                 <a title="Move hold to bottom" href="request.pl?action=move&amp;where=bottom&amp;borrowernumber=[% reserveloo.borrowernumber %]&amp;biblionumber=[% reserveloo.biblionumber %]&amp;reserve_id=[% reserveloo.reserve_id %]&amp;date=[% reserveloo.date %]">
715                     <img src="[% interface %]/[% theme %]/img/go-bottom.png" border="0" alt="Go bottom" />
716                 </a>
717
718                 <a title="Move hold down" href="request.pl?action=move&amp;where=down&amp;borrowernumber=[% reserveloo.borrowernumber %]&amp;biblionumber=[% reserveloo.biblionumber %]&amp;reserve_id=[% reserveloo.reserve_id %]&amp;date=[% reserveloo.date %]">
719                     <img src="[% interface %]/[% theme %]/img/go-down.png" border="0" alt="Go down" />
720                 </a>
721         </td>
722     [% END %]
723
724         <td>
725           <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% reserveloo.borrowernumber %]" >
726           [% IF ( reserveloo.hidename ) %]
727               [% reserveloo.cardnumber (reserveloo.borrowernumber) %]
728           [% ELSE %]
729               [% reserveloo.firstname %] [% reserveloo.surname %]
730           [% END %]
731           </a>
732         </td>
733         <td>[% reserveloo.notes %]</td>
734         <td>[% reserveloo.date %]</td>
735         <td>[% reserveloo.expirationdate %]</td>
736         <td>
737     [% IF ( reserveloo.wait ) %]
738         [% IF ( reserveloo.atdestination ) %]
739             [% IF ( reserveloo.found ) %]
740                 Item waiting at <b> [% reserveloo.wbrname %]</b> <input type="hidden" name="pickup" value="[% reserveloo.wbrcode %]" />
741             [% ELSE %]
742                 Waiting to be pulled <input type="hidden" name="pickup" value="[% reserveloo.wbrcode %]" />
743             [% END %]
744           [% ELSE %]
745             Item being transferred to <b> [% reserveloo.wbrname %]</b> <input type="hidden" name="pickup" value="[% reserveloo.wbrcode %]" />
746          [% END %]
747     [% ELSE %]
748           <select name="pickup">
749       [% FOREACH branchloo IN reserveloo.branchloop %]
750         [% IF ( branchloo.selected ) %]
751             <option value="[% branchloo.branchcode %]" selected="selected">
752         [% ELSE %]
753             <option value="[% branchloo.branchcode %]">
754         [% END %]
755               [% branchloo.branchname %]
756             </option>
757       [% END %]
758           </select>
759     [% END %]
760         </td>
761         <td>
762     [% IF ( reserveloo.wait ) %]
763           <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% reserveloo.biblionumber %]">
764                 [% IF ( reserveloo.barcodenumber ) %]
765                     [% reserveloo.barcodenumber %]
766                     <input type="hidden" name="itemnumber" value="[% reserveloo.itemnumber %]" />
767                 [% ELSE %]
768                     No barcode
769                 [% END %]
770           </a>
771     [% ELSE %]
772             [% IF ( reserveloo.item_level_hold ) %]
773                 <i>Only item
774                 <a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% reserveloo.biblionumber %]">
775                      [% IF ( reserveloo.barcodenumber ) %]
776                          [% reserveloo.barcodenumber %]
777                         <input type="hidden" name="itemnumber" value="[% reserveloo.itemnumber %]" />
778                     [% ELSE %]
779                         No barcode
780                     [% END %]
781                 </a>
782                 </i>
783             [% ELSE %]
784                 <i>Next available</i>
785                  <input type="hidden" name="itemnumber" value="" />
786             [% END %]
787     [% END %]
788         </td>
789
790     [% IF ( CAN_user_reserveforothers_modify_holds_priority ) %]
791         <td>
792                 <a title="Toggle lowest priority" href="request.pl?action=setLowestPriority&amp;borrowernumber=[% reserveloo.borrowernumber %]&amp;biblionumber=[% reserveloo.biblionumber %]&amp;reserve_id=[% reserveloo.reserve_id %]&amp;date=[% reserveloo.date %]">
793                         [% IF ( reserveloo.lowestPriority ) %]
794                         <img src="[% interface %]/[% theme %]/img/go-bottom.png" border="0" alt="Unset lowest priority" />
795                         [% ELSE %]
796                         <img src="[% interface %]/[% theme %]/img/go-down.png" border="0" alt="Set to lowest priority" />
797                         [% END %]
798                 </a>
799         </td> 
800     [% END %]
801
802         <td>
803            <a title="Cancel hold" href="request.pl?action=cancel&amp;borrowernumber=[% reserveloo.borrowernumber %]&amp;biblionumber=[% reserveloo.biblionumber %]&amp;reserve_id=[% reserveloo.reserve_id %]&amp;date=[% reserveloo.date %]">
804                     <img src="[% interface %]/[% theme %]/img/x.png" border="0" alt="Cancel" />
805                 </a>
806         </td>
807
808         [% IF SuspendHoldsIntranet %]
809         <td>
810         [% UNLESS ( reserveloo.wait ) %]
811             <input type="button" value="[% IF ( reserveloo.suspend ) %]Unsuspend[% ELSE %]Suspend[% END %]" onclick="window.location.href='request.pl?action=toggleSuspend&amp;reserve_id=[% reserveloo.reserve_id %]&amp;borrowernumber=[% reserveloo.borrowernumber %]&amp;biblionumber=[% reserveloo.biblionumber %]&amp;date=[% reserveloo.date %]&amp;suspend_until=' + $('#suspend_until_[% reserveloo.reserve_id %]').val()" />
812
813             [% IF AutoResumeSuspendedHolds %]
814         <label for="suspend_until_[% reserveloo.reserve_id %]">[% IF ( reserveloo.suspend ) %] on [% ELSE %] until [% END %]</label>
815             <input name="suspend_until" id="suspend_until_[% reserveloo.reserve_id %]" size="10" readonly="readonly" value="[% reserveloo.suspend_until | $KohaDates %]" class="datepicker suspend_until_datepicker" />
816             <a href='#' onclick="document.getElementById('suspend_until_[% reserveloo.reserve_id %]').value='';">Clear date</a>
817             [% END %]
818         [% ELSE %]
819                 <input type="hidden" name="suspend_until" value="" />
820         [% END %]
821         </td>
822         [% END # IF SuspendHoldsIntranet %]
823
824       </tr>
825
826   [% END %] <!-- existing reserveloop -->
827      </table>
828   [% END %]<!-- /reserveloop -->
829 [% END %]<!-- /biblioloop -->
830
831 <fieldset class="action">
832   <input type="submit" name="submit" value="Update hold(s)" />
833 </fieldset>
834 </fieldset>
835 </form>
836 [% END %]
837 [% END %]
838 [% END %]
839 </div>
840 </div>
841
842 <div class="yui-b">
843 [% UNLESS ( multi_hold ) %]
844   [% INCLUDE 'biblio-view-menu.inc' %]
845 [% END %]
846
847 </div>
848 </div>
849 [% INCLUDE 'intranet-bottom.inc' %]