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