Bug 6739: (follow-up) fix various issues
[koha.git] / koha-tmpl / opac-tmpl / prog / en / modules / opac-user.tt
1 [% USE Koha %]
2 [% USE KohaDates %]
3 [% INCLUDE 'doc-head-open.inc' %]
4 [% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] catalog › Your library home
5 [% INCLUDE 'doc-head-close.inc' %]
6 [% INCLUDE 'calendar.inc' %]
7 [% INCLUDE 'datatables.inc' %]
8 <script type="text/JavaScript">
9 //<![CDATA[
10 var MSG_CONFIRM_DELETE_HOLD   = _("Are you sure you want to cancel this hold?");
11 var MSG_CONFIRM_SUSPEND_HOLDS = _("Are you sure you want to suspend all holds?");
12 var MSG_CONFIRM_RESUME_HOLDS  = _("Are you sure you want to resume all suspended holds?");
13
14             $(function() {
15             $('#opac-user-views').tabs();
16
17         var dTables = $("#checkoutst,#holdst,#overduest");
18         dTables.each(function(){
19             var thIndex = $(this).find("th.psort").index();
20             $(this).dataTable($.extend(true, {}, dataTablesDefaults, {
21                 "aaSorting" : [[ thIndex, 'asc' ]],
22                 "aoColumnDefs": [
23                     { "aTargets": [ "nosort" ],"bSortable": false,"bSearchable": false },
24                     { "sType": "anti-the", "aTargets" : [ "anti-the" ] },
25                     { "sType": "title-string", "aTargets" : [ "title-string" ] }
26                 ]
27             }));
28         });
29
30 [% IF ( GoogleJackets ) %]KOHA.Google.GetCoverFromIsbn();[% END %]
31         [% IF ( OpacRenewalAllowed && canrenew && !userdebarred ) %]$("#renewselected").submit(function(){
32             valid = false;
33             $("input[type=checkbox]").each(function(){
34                 if($(this).is(':checked')){
35                     valid = true;
36                 }
37             });
38             if(!valid){
39                 alert(_("Nothing has been selected. Check the box for each item you want to renew"));
40             }
41             return valid;
42         });
43         $("body").on("click","#renewselected_link",function(){
44             $("#renewselected").submit();
45         });
46         $("body").on("click","#renewall_link",function(){
47             $("#renewall").submit();
48         });
49         $("#checkoutst caption").append("<div id=\"renewcontrols\"><a id=\"renewselected_link\" href=\"#\">"+_("Renew selected")+"</a> <a id=\"renewall_link\" href=\"#\">"+_("Renew all")+"</a></div>");[% END %]
50         $( ".suspend-until" ).datepicker({ minDate: 1 }); // Require that "until date" be in the future
51             });
52 //]]>
53 </script>
54 </head>
55 <body id="opac-user">
56 <div id="doc3" class="yui-t1">
57    <div id="bd">
58 [% INCLUDE 'masthead.inc' %]
59
60     <div id="yui-main">
61     <div class="yui-b"><div class="yui-g">
62         <div id="userdetails" class="container">
63         [% IF ( bor_messages ) %]
64                <div class="dialog message">
65                    <h3>Messages for you</h3>
66                        <ul>
67                                [% FOREACH bor_messages_loo IN bor_messages_loop %]
68                                         <li>
69                                                 <strong>[% bor_messages_loo.message %]</strong><br>
70                             &nbsp;&nbsp;&nbsp;<i>Written on [% bor_messages_loo.message_date | $KohaDates %] by [% bor_messages_loo.branchname %]</i>
71                                         </li>
72                                 [% END %]
73
74                                 [% IF ( opacnote ) %]<li>[% opacnote %]</li>[% END %]
75                        </ul>
76                </div>
77         [% END %]
78     [% FOREACH BORROWER_INF IN BORROWER_INFO %]
79         <h2>Hello, [% INCLUDE 'patron-title.inc' category_type = BORROWER_INF.category_type firstname = BORROWER_INF.firstname surname = BORROWER_INF.surname othernames = BORROWER_INF.othernames cardnumber = BORROWER_INF.cardnumber %]
80         <span class="hint">(<a href="/cgi-bin/koha/opac-main.pl?logout.x=1">Click here</a> if you're not
81         [% BORROWER_INF.title %] [% INCLUDE 'patron-title.inc' category_type = BORROWER_INF.category_type firstname = BORROWER_INF.firstname surname = BORROWER_INF.surname othernames = BORROWER_INF.othernames cardnumber = BORROWER_INF.cardnumber %])
82         </span></h2>
83         
84                 [% IF ( patronupdate ) %]<div class="dialog message"><h3>Thank you!</h3><p>Your corrections have been submitted to the library, and a staff member will update your record as soon as possible.</p></div>[% END %]
85                 
86         [% IF ( BORROWER_INF.warndeparture ) %]
87         <div class="dialog alert" id="warndeparture">
88                 <strong>Please note:</strong><span> Your card will expire on <span id="warndeparture_date">[% BORROWER_INF.warndeparture | $KohaDates %]</span>. Please contact the library for more information.</span>
89                 [% IF ( BORROWER_INF.returnbeforeexpiry ) %]<span id="warndeparture_returnbeforeexpiry"> Also note that you must return all checked out items before your card expires.</span>[% END %]
90         </div>
91         [% END %]
92
93         [% IF ( BORROWER_INF.warnexpired ) %]
94         <div class="dialog alert" id="warnexpired">
95             <strong>Please note:</strong><span> Your account has expired. Please contact the library for more information.</span>
96         </div>
97         [% ELSIF ( BORROWER_INF.warnexpired ) %]
98         <div class="dialog alert">
99                 <strong>Please note:</strong><span> You account has expired as of [% BORROWER_INF.warnexpired %]. Please contact the library if you wish to renew your account.</span>
100         </div>
101         [% END %]
102
103         [% IF ( RENEW_ERROR ) %]
104         <div class="dialog alert">
105                 <string>Please note:</string>
106                 <span>
107                     Your account renewal failed because of the following:
108                     [% FOREACH error IN RENEW_ERROR.split('|') %]
109                         [% IF error == 'card_expired' %]
110                             Your account has expired. Please contact the library for more information.
111                         [% ELSIF error == 'too_many' %]
112                             You have renewed this item the maximum number of times allowed.
113                         [% ELSIF error == 'on_reserve' %]
114                             This item is on hold for another patron.
115                         [% END %]
116                     [% END %]
117                 </span>
118         </div>
119         [% END %]
120
121         [% IF ( patron_flagged ) %]
122                 <div class="dialog alert">
123         <ul>
124             [% IF ( userdebarred ) %]
125                 <span id="userdebarred"><li><strong>Please note:</strong> Your account has been frozen[% IF ( BORROWER_INF.userdebarreddate ) %] until <span id="userdebarred_date">[% BORROWER_INF.userdebarreddate | $KohaDates %]</span>[% END %][% IF ( BORROWER_INF.debarredcomment ) %] with the comment <span id="userdebarred_comment">"[% BORROWER_INF.debarredcomment %]"</span>[% END %]. Usually the reason for freezing an account is old overdues or damage fees. If <a href="/cgi-bin/koha/opac-user.pl">your account page</a> shows your account to be clear, please contact the library.</li></span>
126             [% END %]
127             [% IF ( BORROWER_INF.gonenoaddress ) %]
128                 <span id="gonenoaddress"><li><strong>Please note:</strong> According to our records, we don't have up-to-date [% UNLESS ( BORROWER_INF.OPACPatronDetails ) %]<a href="/cgi-bin/koha/opac-memberentry.pl">contact information</a>[% ELSE %]contact information[% END %] on file.  Please contact the library[% IF ( BORROWER_INF.OPACPatronDetails ) %] or use the <a href="/cgi-bin/koha/opac-memberentry.pl">online update form</a> to submit current information (<em>Please note:</em> there may be a delay in restoring your account if you submit online)[% END %].</li></span>
129             [% END %]
130             [% IF ( BORROWER_INF.lost ) %]
131                 <span id="lost"><li><strong>Please note: </strong> Your library card has been marked as lost or stolen. If this is an error, please contact the library.</li></span>
132             [% END %]
133             [% IF ( renewal_blocked_fines ) && ( OpacRenewalAllowed ) %]
134                 <span id="renewal_blocked_fines"><li><strong>Please note: </strong> Since you have <a href="/cgi-bin/koha/opac-account.pl">[% IF renewal_blocked_fines != "0.00" %] more than <span id="renewal_blocked_fines_amount">[% renewal_blocked_fines %]</span> in [% END %] fines</a>, you cannot renew your books online. Please pay your fines if you wish to renew your books.</li></span>
135             [% END %]
136         </ul></div>
137         [% END %]
138
139         [% SET OPACMySummaryNote = Koha.Preference('OPACMySummaryNote') %]
140         [% IF OPACMySummaryNote %][% OPACMySummaryNote %][% END %]
141         
142 <div id="opac-user-views" class="toptabs">
143         <ul>
144             <li><a href="#opac-user-checkouts">Checked out</a></li>
145             [% IF ( overdues_count ) %]<li><a href="#opac-user-overdues">Overdue</a></li>[% END %]
146 [% IF ( OPACFinesTab ) %]
147             [% IF ( BORROWER_INF.amountoverfive ) %]<li><a href="#opac-user-fines">Fines</a></li>[% END %]
148             [% IF ( BORROWER_INF.amountoverzero ) %]<li><a href="#opac-user-fines">Fines</a></li>[% END %]
149             [% IF ( BORROWER_INF.amountlessthanzero ) %]<li><a href="#opac-user-fines">Credits</a></li>[% END %]
150 [% END %]
151             [% IF ( waiting_count ) %][% IF ( BORROWER_INF.atdestination ) %]<li><a href="#opac-user-waiting">Waiting</a></li>[% END %][% END %]
152             [% IF ( reserves_count ) %]<li><a href="#opac-user-holds">Holds</a></li>[% END %]
153         </ul>
154
155     <div id="opac-user-checkouts">[% IF ( issues_count ) %]
156         <form id="renewselected" action="/cgi-bin/koha/opac-renew.pl" method="post">
157     <input type="hidden" name="borrowernumber" value="[% borrowernumber %]">
158     <input type="hidden" name="from" value="opac_user" />
159         <table id="checkoutst">
160         <caption>[% issues_count %] Item(s) checked out</caption>
161        <thead><tr>
162         [% IF ( JacketImages ) %]<th class="nosort">&nbsp;</th>[% END %]
163         <th class="anti-the">Title</th>
164         <th class="title-string psort">Due</th>
165         [% UNLESS ( item_level_itypes ) %]<th>Item type</th> [% END %]
166         [% IF ( show_barcode ) %]<th>Barcode</th>[% END %]
167         <th>Call No.</th>
168         [% IF ( OpacRenewalAllowed ) %]
169         <th class="nosort">Renew</th>
170         [% END %]
171 [% IF ( OPACFinesTab ) %]
172         <th>Fines</th>
173 [% END %]
174         [% IF ( OPACMySummaryHTML ) %]
175         <th class="nosort">Links</th>
176         [% END %]
177         </tr></thead>
178         <tbody>
179         <!-- FIXME: the styling for highlight overrides the overdue red background,
180                 so currently we don't use this conditional as the first thing inside the LOOP:
181         [% UNLESS ( __odd__ ) %]
182            <tr[% IF ( overdue ) %] class="overdue"[% END %]>
183         [% ELSE %]
184            <tr class="[% IF ( overdue ) %]overdue [% END %]highlight">
185         [% END %]
186         -->
187         [% FOREACH ISSUE IN ISSUES %]
188         [% IF ( ISSUE.overdue ) %]<tr class="overdue">[% ELSE %]<tr>[% END %]
189
190 [% IF ( JacketImages ) %]<td class="jacketcell">
191
192 [% IF ( OPACAmazonCoverImages ) %][% IF ( ISSUE.normalized_isbn ) %]<a href="http://www.amazon.com/gp/reader/[% ISSUE.normalized_isbn %]/ref=sib_dp_pt/002-7879865-0184864#reader-link" title="View at Amazon.com"><img border="0" src="http://images.amazon.com/images/P/[% ISSUE.normalized_isbn %].01.THUMBZZZ.jpg" alt="Cover Image" /></a>[% ELSE %]<a href="#"><span class="no-image">No cover image available</span></a>[% END %][% END %]
193
194 [% IF ( GoogleJackets ) %][% IF ( ISSUE.normalized_isbn ) %]<div style="display:block;" title="Click to view in Google Books" class="[% ISSUE.normalized_isbn %]" id="gbs-thumbnail[% loop.count %]"></div>[% ELSE %]<a href="http://books.google.com/books?q=[% ISSUE.title |url %]"><span class="no-image">No cover image available</span></a>[% END %][% END %]
195
196 [% IF ( BakerTaylorEnabled ) %][% IF ( ISSUE.normalized_isbn ) %]<a href="https://[% BakerTaylorBookstoreURL |html %][% ISSUE.normalized_isbn %]"><img alt="See Baker &amp; Taylor" src="[% BakerTaylorImageURL |html %][% ISSUE.normalized_isbn %]" /></a>[% ELSE %]<span class="no-image">No cover image available</span><!-- BakerTaylor needs normalized_isbn! -->[% END %][% END %]
197
198 [% IF ( SyndeticsEnabled ) %][% IF ( SyndeticsCoverImages ) %][% IF ( using_https ) %]
199 <img src="https://secure.syndetics.com/index.aspx?isbn=[% ISSUE.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% ISSUE.normalized_upc %]&amp;oclc=[% ISSUE.normalized_oclc %]" alt="" class="thumbnail" />
200 [% ELSE %]
201 <img src="http://www.syndetics.com/index.aspx?isbn=[% ISSUE.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;type=xw10&amp;upc=[% ISSUE.normalized_upc %]&amp;oclc=[% ISSUE.normalized_oclc %]" alt="" class="thumbnail" />[% END %][% END %][% END %]
202
203 </td>[% END %]
204
205                 <td class="title"><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% ISSUE.biblionumber %]">[% ISSUE.title |html %][% FOREACH subtitl IN ISSUE.subtitle %] [% subtitl.subfield %][% END %]</a><span class="item-details">
206                         [% ISSUE.author %]
207                     </span></td>
208                 [% IF ( ISSUE.overdue ) %]
209                     <td class="date_due overdue"><span title="[% ISSUE.date_due %]">[% ISSUE.date_due | $KohaDates %]</span></td>
210                 [% ELSE %]
211                     <td class="date_due"><span title="[% ISSUE.date_due %]">[% ISSUE.date_due | $KohaDates %]</span></td>
212                 [% END %]
213                 [% UNLESS ( item_level_itypes ) %]<td class="itype">[% IF ( ISSUE.imageurl ) %]<img src="[% ISSUE.imageurl %]" title="[% ISSUE.description %]" alt="[% ISSUE.description %]" />[% END %] [% ISSUE.description %]</td>[% END %]
214                 [% IF ( show_barcode ) %]<td class="barcode">[% ISSUE.barcode %]</td>[% END %]
215                 <td class="call_no">[% ISSUE.itemcallnumber %]</td>
216                 [% IF ( OpacRenewalAllowed ) %]
217                     <td class="renew">
218                     [% IF ( ISSUE.status ) %]
219                         [% IF ( canrenew ) %]
220                             <input type="checkbox" name="item" value="[% ISSUE.itemnumber %]"/> <a href="/cgi-bin/koha/opac-renew.pl?from=opac_user&amp;item=[% ISSUE.itemnumber %]&amp;borrowernumber=[% ISSUE.borrowernumber %]">Renew</a>
221                         [% END %]
222                         <span class="renewals">([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining)</span>
223                     [% ELSIF ( ISSUE.too_many ) %]
224                         Not renewable
225                     [% ELSIF ( ISSUE.too_soon ) %]
226                         No renewal before [% ISSUE.soonestrenewdate %]
227                         <span class="renewals">([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining)</span>
228                     [% ELSIF ( ISSUE.on_reserve ) %]
229                         <span class="renewals">(On hold)</span>
230                     [% END %]
231                     </td>
232                 [% END %]
233 [% IF ( OPACFinesTab ) %]
234                 <td class="fines">[% IF ( ISSUE.charges ) %]Yes[% ELSE %]No[% END %]</td>
235 [% END %]
236             [% IF ( OPACMySummaryHTML ) %]
237                 <td class="links">[% ISSUE.MySummaryHTML %]</td>
238             [% END %]
239             </tr>
240         [% END %]</tbody>
241         </table>
242        [% IF ( canrenew && !userdebarred && OpacRenewalAllowed ) %]
243         <input type="submit" value="Renew selected" />
244         [% END %]
245         </form>
246         [% IF ( canrenew && !userdebarred && OpacRenewalAllowed ) %]
247         <form id="renewall" action="/cgi-bin/koha/opac-renew.pl" method="post">
248             <input type="hidden" name="from" value="opac_user" />
249             <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
250             [% FOREACH ISSUE IN ISSUES %]
251             <input type="hidden" name="item" value="[% ISSUE.itemnumber %]" />
252             [% END %]
253             <input type="submit" value="Renew all" />
254         </form>
255         [% END %]
256     [% ELSE %]
257         <table>
258             <tr><td>You have nothing checked out</td></tr>
259         </table>
260     [% END %]</div>
261
262 [% IF ( OPACFinesTab ) %]
263         <!-- FINES BOX -->
264         [% IF ( BORROWER_INF.amountoverfive ) %]
265             <div id="opac-user-fines"> <h3>Fines and charges</h3>
266             <table>
267                 <tr><th colspan="2">Amount</th></tr>
268                 <tr>
269                     <td>You currently owe fines and charges amounting to:</td>
270                     <td><a href="/cgi-bin/koha/opac-account.pl">[% BORROWER_INF.amountoutstanding %]</a></td>
271                 </tr>
272             </table></div>
273         [% END %]
274
275         [% IF ( BORROWER_INF.amountoverzero ) %]
276            <div id="opac-user-fines"> <h3>Fines and charges</h3>
277             <table>
278                 <tr><th colspan="2">Amount</th></tr>
279                 <tr><td>You currently owe fines and charges amounting to:</td>
280                 <td><a href="/cgi-bin/koha/opac-account.pl">[% BORROWER_INF.amountoutstanding %]</a></td></tr>
281             </table></div>
282         [% END %]
283
284         [% IF ( BORROWER_INF.amountlessthanzero ) %]
285           <div id="opac-user-fines">  <h3>Credits</h3>
286             <table>
287             <tr><th colspan="2">Amount</th></tr>
288             <tr><td>You have a credit of:</td><td><a href="/cgi-bin/koha/opac-account.pl">[% BORROWER_INF.amountoutstanding %]</a></td></tr>
289             </table></div>
290         [% END %]
291 [% END %]
292     
293     [% END %]
294
295     [% IF ( waiting_count ) %]
296     [% IF ( atdestination ) %]
297     <div id="opac-user-waiting">
298         <table id="waitingt">
299             <caption>Holds waiting</caption>
300            <thead> <tr>
301                 <th>Title</th>
302                 <th>Hold date</th>
303                 <th>Pick up library</th>
304             </tr></thead>
305             <tbody>[% FOREACH WAITIN IN WAITING %]
306                 <tr>
307                     <td><img src="[% themelang %]/images/[% WAITIN.itemtype %].gif" alt="[% WAITIN.itemtype %]" title="[% WAITIN.itemtype %]" /></td>
308                     <td><a href="opac-detail.pl?biblionumber=[% WAITIN.biblionumber %]">
309                             [% WAITIN.waiting_title %]
310                         </a><span class="item-details">
311                             [% WAITIN.author %]
312                         </span></td>
313                     <td>[% WAITIN.reservedate | $KohaDates %]</td>
314                     <td>[% IF ( WAITIN.atdestination ) %]<strong>Waiting</strong> at [% WAITIN.branch %]
315                         [% ELSE %]
316                         In transit from [% WAITIN.holdingbranch %] to [% WAITIN.branch %]
317                         [% END %]</td>
318                 </tr>
319             [% END %]</tbody>
320         </table></div>
321         [% END %]
322     [% END %]
323
324 [% IF ( overdues_count ) %]
325 <div id="opac-user-overdues"><table id="overduest">
326 <caption>Overdues <span class="count">([% overdues_count %] total)</span></caption>
327 <!-- OVERDUES TABLE ROWS -->
328 <thead><tr>
329 [% IF ( JacketImages ) %]<th class="nosort">&nbsp;</th>[% END %]
330 <th>Title</th>
331 [% UNLESS ( item_level_itypes ) %]<th>Item type</th> [% END %]
332 [% IF ( show_barcode ) %]<th>Barcode</th>[% END %]
333 <th>Call no.</th>
334 <th class="psort">Due</th>
335 [% IF ( OpacRenewalAllowed ) %]
336                     <th class="nosort">Renew</th>
337 [% END %]
338 [% IF ( OPACFinesTab ) %]
339 <th>Fines</th>
340 [% END %]
341 </tr></thead>
342
343 <tbody>[% FOREACH OVERDUE IN OVERDUES %]
344 <tr>
345 [% IF ( JacketImages ) %]<td class="jacketcell">
346
347 [% IF ( OPACAmazonCoverImages ) %][% IF ( OVERDUE.normalized_isbn ) %]<a href="http://www.amazon.com/gp/reader/[% OVERDUE.normalized_isbn %]/ref=sib_dp_pt/002-7879865-0184864#reader-link" title="View at Amazon.com"><img src="http://images.amazon.com/images/P/[% OVERDUE.normalized_isbn %].01.THUMBZZZ.jpg" alt="" class="thumbnail" /></a>[% ELSE %]<a href="#"><span class="no-image">No cover image available</span></a>[% END %][% END %]
348
349 [% IF ( GoogleJackets ) %][% IF ( OVERDUE.normalized_isbn ) %]<div style="display:block;" title="Click to view in Google Books" class="[% OVERDUE.normalized_isbn %]" id="gbs-thumbnail[% loop.count %]"></div>[% ELSE %]<a href="http://books.google.com/books?q=[% OVERDUE.title |url %]"><span class="no-image">No cover image available</span></a>[% END %][% END %]
350
351 [% IF ( BakerTaylorEnabled ) %][% IF ( OVERDUE.normalized_isbn ) %]<a href="https://[% BakerTaylorBookstoreURL |html %][% OVERDUE.normalized_isbn %]"><img alt="See Baker &amp; Taylor" src="[% BakerTaylorImageURL |html %][% OVERDUE.normalized_isbn %]" /></a>[% ELSE %]<!-- BakerTaylor needs normalized_isbn! --><span class="no-image">No cover image available</span>[% END %][% END %]
352
353 [% IF ( SyndeticsCoverImages ) %]
354 [% IF ( using_https ) %]
355 <img src="https://secure.syndetics.com/index.aspx?isbn=[% OVERDUE.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;upc=[% OVERDUE.normalized_upc %]&amp;oclc=[% OVERDUE.normalized_oclc %]&amp;type=xw10" alt="" class="thumbnail"/>
356 [% ELSE %]
357 <img src="http://www.syndetics.com/index.aspx?isbn=[% OVERDUE.normalized_isbn %]/SC.GIF&amp;client=[% SyndeticsClientCode %]&amp;upc=[% OVERDUE.normalized_upc %]&amp;oclc=[% OVERDUE.normalized_oclc %]&amp;type=xw10" alt="" class="thumbnail"/>
358 [% END %]
359 [% END %]
360 </td>[% END %]
361
362 <td><a href="/cgi-bin/koha/opac-detail.pl?bib=[% OVERDUE.biblionumber %]">[% OVERDUE.title |html %][% FOREACH subtitl IN OVERDUE.subtitle %] [% subtitl.subfield %][% END %]</a> <span class="item-details">[% OVERDUE.author %]</span></td>
363
364 [% UNLESS ( item_level_itypes ) %]<td>[% IF ( OVERDUE.imageurl ) %]<img src="[% OVERDUE.imageurl %]" title="[% OVERDUE.description %]" alt="[% OVERDUE.description %]" />[% END %] [% OVERDUE.description %]</td>[% END %]
365 [% IF ( show_barcode ) %]<td>[% OVERDUE.barcode %]</td>[% END %]
366 <td>[% OVERDUE.itemcallnumber %]</td>
367 <td><span title="[% OVERDUE.date_due %]">[% OVERDUE.date_due | $KohaDates %]</span></td>
368                 [% IF ( OpacRenewalAllowed ) %]
369 <td>
370 [% IF ( OVERDUE.debarred ) %]Account frozen
371 [% ELSIF ( OVERDUE.status ) %]
372 [% IF ( canrenew ) %]<a href="/cgi-bin/koha/opac-renew.pl?from=opac_user&amp;item=[% OVERDUE.itemnumber %]&amp;bornum=[% OVERDUE.borrowernumber %]">Renew</a>[% END %] <span class="renewals">([% OVERDUE.renewsleft %] of [% OVERDUE.renewsallowed %] renewals remaining)</span>
373 [% ELSIF ( OVERDUE.onreserve ) %]On hold
374 [% ELSE %]No renewals left
375 [% END %]
376 </td>[% END %]
377 [% IF ( OPACFinesTab ) %]
378 <td>[% IF ( OVERDUE.charges ) %]Yes[% ELSE %]No[% END %]</td>
379 [% END %]
380 </tr>
381 [% END %]</tbody>
382 </table></div>
383 [% END %]
384     
385
386     [% IF ( reserves_count ) %]
387         <div id="opac-user-holds">
388         <table id="holdst">
389         <caption>Holds <span class="count">([% reserves_count %] total)</span></caption>
390
391         <!-- RESERVES TABLE ROWS -->
392         <thead>
393             <tr>
394                 <th>Title</th>
395                 <th class="psort">Placed on</th>
396                 [% IF OpacHoldNotes %]
397                     <th>Notes</th>
398                 [% END %]
399                 <th>Expires on</th>
400                 <th>Pick up location</th>
401                 [% IF ( showpriority ) %]
402                     <th>Priority</th>
403                 [% END %]
404                 <th>Status</th>
405                 <th class="nosort">Modify</th>
406                 [% IF SuspendHoldsOpac %]
407                     <th class="nosort" >Suspend individual holds</th>
408                 [% END %]
409             </tr>
410         </thead>
411         <tbody>
412             [% FOREACH RESERVE IN RESERVES %]
413            [% IF ( RESERVE.wait ) %]
414                         [% IF ( RESERVE.atdestination ) %]
415                             [% IF ( RESERVE.found ) %]
416                             <tr class="reserved">
417                             [% ELSE %]
418                             <tr>
419                         [% END %]
420                         [% ELSE %]
421                             <tr class="transfered">
422                         [% END %]
423                     [% ELSE %]
424                             <tr>
425                     [% END %]
426                 <td class="title"><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% RESERVE.biblionumber %]">[% RESERVE.reserves_title %][% FOREACH subtitl IN RESERVE.subtitle %] [% subtitl.subfield %][% END %]</a>
427                     [% RESERVE.author %]
428                 </td>
429                 <td class="reservedate"><span title="[% RESERVE.reservedate %]">[% RESERVE.reservedate | $KohaDates %]</span></td>
430                 [% IF OpacHoldNotes %]<td class="reservenotes">[% RESERVE.reservenotes %]</td>[% END %]
431                 <td class="expirationdate">
432                     [% IF ( RESERVE.expirationdate ) %]
433                         <span title="[% RESERVE.expirationdate %]">[% RESERVE.expirationdate | $KohaDates %]</span>
434                     [% ELSE %]
435                         Never expires
436                     [% END %]
437                 </td>
438                 <td class="branch">[% RESERVE.branch %]</td>
439                                 [% IF ( showpriority ) %]
440                              <td class="priority">[% RESERVE.priority %] </td>
441                                 [% END %]
442                 <td class="status">
443                     [% IF ( RESERVE.wait ) %]
444                         [% IF ( RESERVE.atdestination ) %]
445                             [% IF ( RESERVE.found ) %]
446                             Item waiting at <b> [% RESERVE.wbrname %]</b>[% IF ( RESERVE.waitingdate ) %] since [% RESERVE.waitingdate | $KohaDates %][% END %]
447                             <input type="hidden" name="pickup" value="[% RESERVE.wbrcd %]" />
448                             [% ELSE %]
449                             Item waiting to be pulled from <b> [% RESERVE.wbrname %]</b>
450                         [% END %]
451                         [% ELSE %]
452                             Item in transit to <b> [% RESERVE.wbrname %]</b> <input type="hidden" name="pickup" value="[% RESERVE.wbrcd %]" />
453                         [% END %]
454                     [% ELSE %]
455                             [% IF ( RESERVE.intransit ) %]
456                                 Item in transit from <b> [% RESERVE.frombranch %]</b> since 
457                                 [% RESERVE.datesent | $KohaDates %]
458                             [% ELSIF ( RESERVE.suspend ) %]
459                                 Suspended [% IF ( RESERVE.suspend_until ) %] until [% RESERVE.suspend_until %] [% END %]
460                             [% ELSE %]
461                                 Pending
462                             [% END %]
463                     [% END %]
464                 </td>
465               <td class="modify">
466                 [% IF ( RESERVE.cancelable ) %]
467                         <form action="/cgi-bin/koha/opac-modrequest.pl" method="post">
468                         <input type="hidden" name="biblionumber" value="[% RESERVE.biblionumber %]" />
469           <input type="hidden" name="reserve_id" value="[% RESERVE.reserve_id %]" />
470                         <input type="submit" name="submit" class="icon delete cancel" value="Cancel" onclick="return confirmDelete(MSG_CONFIRM_DELETE_HOLD);" /></form>
471                 [% ELSE %]
472                 [% END %]
473                 </td>
474
475         [% IF SuspendHoldsOpac %]
476             <td>
477                 [% IF ( RESERVE.cancelable ) %]
478                     <form action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
479                         <input type="hidden" name="reserve_id" value="[% RESERVE.reserve_id %]" />
480
481                         [% IF RESERVE.suspend %]
482                             <input type="submit" name="submit" value="Resume suspended hold" />
483                         [% ELSE %]
484                             <input type="submit" name="submit" class="icon delete cancel" value="Suspend hold" />
485
486                             [% IF AutoResumeSuspendedHolds %]
487                                 <label for="suspend_until_[% RESERVE.reserve_id %]"> until </label>
488                                 <input name="suspend_until" id="suspend_until_[% RESERVE.reserve_id %]" class="suspend-until" readonly="readonly" size="10" />
489                                 <a href="#" style="font-size:85%;text-decoration:none;" onclick="document.getElementById('suspend_until_[% RESERVE.reserve_id %]').value='';return false;">Clear date</a>
490                             [% END %]
491                         [% END %]
492                     </form>
493                 [% END %]
494             </td>
495         [% END %]
496
497             </tr>
498             [% END %]
499                         </tbody>
500         </table>
501
502         [% IF SuspendHoldsOpac %]
503         <div>
504             <form action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
505               <input type="submit" name="submit" class="icon delete cancel" value="Suspend all holds" onclick="return confirmDelete(MSG_CONFIRM_SUSPEND_HOLDS);" />
506               <input type="hidden" name="suspend" value="1" />
507
508               [% IF AutoResumeSuspendedHolds %]
509               <label for="suspend_until"> until </label>
510               <input name="suspend_until" id="suspend_until" class="suspend-until" readonly="readonly" size="10" />
511               <a href="#" style="font-size:85%;text-decoration:none;" onclick="document.getElementById('suspend_until').value='';return false;">Clear date</a></p>
512               [% END %]
513             </form>
514         </div>
515         <div>
516             <form action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
517               <input type="submit" name="submit" class="icon delete cancel" value="Resume all suspended holds" onclick="return confirmDelete(MSG_CONFIRM_RESUME_HOLDS);" />
518               <input type="hidden" name="suspend" value="0" />
519             </form>
520         </div>
521         [% END %]
522     </div>
523     [% END %]
524     </div><!-- /opac-user views -->
525     </div><!-- /userdetails -->
526 </div>
527 </div>
528 </div>
529 <div class="yui-b">
530 <div id="leftmenus" class="container">
531 [% INCLUDE 'navigation.inc' IsPatronPage=1 %]
532 </div>
533 </div>
534 </div>
535 [% INCLUDE 'opac-bottom.inc' %]