Merge remote-tracking branch 'origin/new/bug_7876'
[koha.git] / koha-tmpl / opac-tmpl / prog / en / modules / opac-user.tt
index b78fc03..9729c7c 100644 (file)
@@ -1,9 +1,9 @@
+[% USE KohaDates %]
+
 [% INCLUDE 'doc-head-open.inc' %]
-[% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha Online[% END %] Catalog › Library Home for
-[% FOREACH BORROWER_INF IN BORROWER_INFO %]
-    [% 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 %]
-[% END %]
+[% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] catalog › Your library home
 [% INCLUDE 'doc-head-close.inc' %]
+[% INCLUDE 'calendar.inc' %]
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.metadata.min.js"></script>
 <script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
 <script type="text/JavaScript">
@@ -58,15 +58,14 @@ $.tablesorter.addParser({
     <div id="yui-main">
     <div class="yui-b"><div class="yui-g">
        <div id="userdetails" class="container">
-
        [% IF ( bor_messages ) %]
               <div class="dialog message">
-                      <h3>Messages For You</h3>
+                   <h3>Messages for you</h3>
                       <ul>
                               [% FOREACH bor_messages_loo IN bor_messages_loop %]
                                        <li>
                                                <strong>[% bor_messages_loo.message %]</strong><br>
-                                               &nbsp;&nbsp;&nbsp;<i>Written on [% bor_messages_loo.message_date_formatted %] by [% bor_messages_loo.branchname %]</i>
+                            &nbsp;&nbsp;&nbsp;<i>Written on [% bor_messages_loo.message_date | $KohaDates %] by [% bor_messages_loo.branchname %]</i>
                                        </li>
                                [% END %]
 
@@ -83,33 +82,35 @@ $.tablesorter.addParser({
                [% 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 %]
                
         [% IF ( BORROWER_INF.warndeparture ) %]
-        <div class="dialog alert">
-                <strong>Please note:</strong><span> Your card will expire on [% BORROWER_INF.warndeparture %]. Please contact the library if you wish to renew your subscription.</span>
-                [% IF ( BORROWER_INF.returnbeforeexpiry ) %]<span> Also note that you must return all checked out items before your card expires.</span>[% END %]
+        <div class="dialog alert" id="warndeparture">
+                <strong>Please note:</strong><span> Your card will expire on <span id="warndeparture_date">[% BORROWER_INF.warndeparture %]</span>. Please contact the library if you wish to renew your subscription.</span>
+                [% IF ( BORROWER_INF.returnbeforeexpiry ) %]<span id="warndeparture_returnbeforeexpiry"> Also note that you must return all checked out items before your card expires.</span>[% END %]
         </div>
         [% END %]
 
-        [% IF ( BORROWER_INF.flagged ) %]
+        [% IF ( patron_flagged ) %]
                <div class="dialog alert">
         <ul>
             [% IF ( userdebarred ) %]
-                <li><strong>Please note:</strong> Your account has been frozen[% IF ( BORROWER_INF.userdebarreddate ) %] until [% BORROWER_INF.userdebarreddate %][% END %][% IF ( BORROWER_INF.debarredcomment ) %] with the comment "[% BORROWER_INF.debarredcomment %]"[% 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 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>
             [% END %]
             [% IF ( BORROWER_INF.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-userupdate.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-userupdate.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 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-userupdate.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-userupdate.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>
             [% END %]
             [% IF ( BORROWER_INF.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 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>
             [% END %]
-            [% IF renewal_blocked_fines %]
-                <li><strong>Please note: </strong> Since you have <a href="/cgi-bin/koha/opac-account.pl">more than [% renewal_blocked_fines %]</a> in fines, you cannot renew your books online. Please pay your fines if you wish to renew your books.</li>
+            [% IF ( renewal_blocked_fines ) && ( OpacRenewalAllowed ) %]
+                <span id="renewal_blocked_fines"><li><strong>Please note: </strong> Since you have <a href="/cgi-bin/koha/opac-account.pl">more than <span id="renewal_blocked_fines_amount">[% renewal_blocked_fines %]</span></a> in fines, you cannot renew your books online. Please pay your fines if you wish to renew your books.</li></span>
+            [% ELSIF ( renewal_blocked_fines ) %]
+        <span id="renewal_blocked_fines"><li><strong>Please note: </strong> You have <a href="/cgi-bin/koha/opac-account.pl">more than <span id="renewal_blocked_fines_amount">[% renewal_blocked_fines %]</span></a> in fines. </li></span>
             [% END %]
         </ul></div>
         [% END %]
         
 <div id="opac-user-views" class="toptabs">
         <ul>
-            <li><a href="/cgi-bin/koha/opac-user.pl#opac-user-checkouts">Checked Out</a></li>
+            <li><a href="/cgi-bin/koha/opac-user.pl#opac-user-checkouts">Checked out</a></li>
             [% IF ( overdues_count ) %]<li><a href="/cgi-bin/koha/opac-user.pl#opac-user-overdues">Overdue</a></li>[% END %]
 [% IF ( OPACFinesTab ) %]
             [% IF ( BORROWER_INF.amountoverfive ) %]<li><a href="/cgi-bin/koha/opac-user.pl#opac-user-fines">Fines</a></li>[% END %]
@@ -123,7 +124,7 @@ $.tablesorter.addParser({
 [% IF ( OPACFinesTab ) %]
         <!-- FINES BOX -->
         [% IF ( BORROWER_INF.amountoverfive ) %]
-            <div id="opac-user-fines"> <h3>Fines and Charges</h3>
+            <div id="opac-user-fines"> <h3>Fines and charges</h3>
             <table>
                 <tr><th colspan="2">Amount</th></tr>
                 <tr>
@@ -134,7 +135,7 @@ $.tablesorter.addParser({
         [% END %]
 
         [% IF ( BORROWER_INF.amountoverzero ) %]
-           <div id="opac-user-fines"> <h3>Fines and Charges</h3>
+           <div id="opac-user-fines"> <h3>Fines and charges</h3>
             <table>
                 <tr><th colspan="2">Amount</th></tr>
                 <tr><td>You currently owe fines and charges amounting to:</td>
@@ -157,11 +158,11 @@ $.tablesorter.addParser({
     [% IF ( atdestination ) %]
     <div id="opac-user-waiting">
         <table id="waitingt">
-            <caption>Holds Waiting</caption>
+            <caption>Holds waiting</caption>
            <thead> <tr>
                 <th colspan="2" class="{sorter:'articles'}">Title</th>
                 <th>Hold date</th>
-                <th>Pick Up Library</th>
+                <th>Pick up library</th>
             </tr></thead>
             <tbody>[% FOREACH WAITIN IN WAITING %]
                 <tr>
@@ -171,7 +172,7 @@ $.tablesorter.addParser({
                         </a><span class="item-details">
                             [% WAITIN.author %]
                         </span></td>
-                    <td>[% WAITIN.reservedate %]</td>
+                    <td>[% WAITIN.reservedate | $KohaDates %]</td>
                     <td>[% IF ( WAITIN.atdestination ) %]<strong>Waiting</strong> at [% WAITIN.branch %]
                         [% ELSE %]
                         In transit from [% WAITIN.holdingbranch %] to [% WAITIN.branch %]
@@ -187,16 +188,16 @@ $.tablesorter.addParser({
        <input type="hidden" name="borrowernumber" value="[% borrowernumber %]">
        <input type="hidden" name="from" value="opac_user" />
         <table id="checkoutst">
-        <caption>[% issues_count %] Item(s) Checked Out</caption>
+        <caption>[% issues_count %] Item(s) checked out</caption>
        <thead><tr>
                [% IF ( JacketImages ) %]<th class="{sorter: false}">&nbsp;</th>[% END %]
         <th class="{sorter:'articles'}">Title</th>
         <th>Due</th>
-               [% UNLESS ( item_level_itypes ) %]<th>Item Type</th> [% END %]
+        [% UNLESS ( item_level_itypes ) %]<th>Item type</th> [% END %]
         [% IF ( show_barcode ) %]<th>Barcode</th>[% END %]
         <th>Call No.</th>
         [% IF ( OpacRenewalAllowed ) %]
-        [% UNLESS  patron_flagged %]<th class="{sorter: false}">Renew</th>[% END %]
+        <th class="{sorter: false}">Renew</th>
         [% END %]
 [% IF ( OPACFinesTab ) %]
         <th>Fines</th>
@@ -236,20 +237,18 @@ $.tablesorter.addParser({
                         [% ISSUE.author %]
                     </span></td>
                 [% IF ( ISSUE.overdue ) %]
-                    <td class="overdue">[% ISSUE.date_due %]</td>
+                    <td class="overdue">[% ISSUE.date_due | $KohaDates %]</td>
                 [% ELSE %]
-                    <td>[% ISSUE.date_due %]</td>
+                    <td>[% ISSUE.date_due | $KohaDates %]</td>
                 [% END %]
                 [% UNLESS ( item_level_itypes ) %]<td>[% IF ( ISSUE.imageurl ) %]<img src="[% ISSUE.imageurl %]" title="[% ISSUE.description %]" alt="[% ISSUE.description %]" />[% END %] [% ISSUE.description %]</td>[% END %]
                 [% IF ( show_barcode ) %]<td>[% ISSUE.barcode %]</td>[% END %]
                 <td>[% ISSUE.itemcallnumber %]</td>
                 [% IF ( OpacRenewalAllowed ) %]
-                    [% UNLESS patron_flagged %]
-                    <td>[% IF ( ISSUE.status ) %]<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> <span class="renewals">([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining)</span>
+                    <td>[% IF ( ISSUE.status ) %][% IF ( canrenew ) %]<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>[% END %] <span class="renewals">([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining)</span>
                         [% ELSE %]
                         Not renewable[% IF ( ISSUE.too_many ) %] <span class="renewals">([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining)</span>[% ELSE %][% IF ( ISSUE.on_reserve ) %] <span class="renewals">(On hold)</span>[% END %][% END %] 
                         [% END %]</td>
-                    [% END %]
                 [% END %]
 [% IF ( OPACFinesTab ) %]
                 <td>[% IF ( ISSUE.charges ) %]Yes[% ELSE %]No[% END %]</td>
@@ -271,7 +270,7 @@ $.tablesorter.addParser({
                        [% FOREACH ISSUE IN ISSUES %]
                        <input type="hidden" name="item" value="[% ISSUE.itemnumber %]" />
                        [% END %]
-                       [% UNLESS patron_flagged %]<input type="submit" value="Renew All" />[% END %]
+                       <input type="submit" value="Renew All" />
                </form>
                [% END %]
     [% ELSE %]
@@ -288,12 +287,13 @@ $.tablesorter.addParser({
 <thead><tr>
 [% IF ( JacketImages ) %]<th class="{sorter: false}">&nbsp;</th>[% END %]
 <th class="{sorter:'articles'}">Title</th>
-[% UNLESS ( item_level_itypes ) %]<th>Item Type</th> [% END %]
+[% UNLESS ( item_level_itypes ) %]<th>Item type</th> [% END %]
 [% IF ( show_barcode ) %]<th>Barcode</th>[% END %]
-<th>Call No.</th>
+<th>Call no.</th>
 <th>Due</th>
 [% IF ( OpacRenewalAllowed ) %]
-                    [% UNLESS patron_flagged %]<th class="{sorter: false}">Renew</th>[% END %][% END %]
+                    <th class="{sorter: false}">Renew</th>
+[% END %]
 [% IF ( OPACFinesTab ) %]
 <th>Fines</th>
 [% END %]
@@ -323,17 +323,16 @@ $.tablesorter.addParser({
 [% UNLESS ( item_level_itypes ) %]<td>[% IF ( OVERDUE.imageurl ) %]<img src="[% OVERDUE.imageurl %]" title="[% OVERDUE.description %]" alt="[% OVERDUE.description %]" />[% END %] [% OVERDUE.description %]</td>[% END %]
 [% IF ( show_barcode ) %]<td>[% OVERDUE.barcode %]</td>[% END %]
 <td>[% OVERDUE.itemcallnumber %]</td>
-<td>[% OVERDUE.date_due %]</td>
+<td>[% OVERDUE.date_due | $KohaDates %]</td>
                 [% IF ( OpacRenewalAllowed ) %]
-                    [% UNLESS patron_flagged %]
 <td>
-[% IF ( OVERDUE.debarred ) %]Account Frozen
+[% IF ( OVERDUE.debarred ) %]Account frozen
 [% ELSIF ( OVERDUE.status ) %]
-<a href="/cgi-bin/koha/opac-renew.pl?from=opac_user&amp;item=[% OVERDUE.itemnumber %]&amp;bornum=[% OVERDUE.borrowernumber %]">Renew</a> <span class="renewals">([% OVERDUE.renewsleft %] of [% OVERDUE.renewsallowed %] renewals remaining)</span>
-[% ELSIF ( OVERDUE.onreserve ) %]On Reserve
+[% 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>
+[% ELSIF ( OVERDUE.onreserve ) %]On hold
 [% ELSE %]No renewals left
 [% END %]
-</td>[% END %][% END %]
+</td>[% END %]
 [% IF ( OPACFinesTab ) %]
 <td>[% IF ( OVERDUE.charges ) %]Yes[% ELSE %]No[% END %]</td>
 [% END %]
@@ -350,9 +349,9 @@ $.tablesorter.addParser({
             <!-- RESERVES TABLE ROWS -->
             <thead><tr>
                 <th class="{sorter:'articles'}">Title</th>
-                <th>Placed On</th>
-               <th>Expires On</th>
-                <th>Pick Up Location</th>
+                <th>Placed on</th>
+        <th>Expires on</th>
+                <th>Pick up location</th>
                [% IF ( showpriority ) %]
                        <th>Priority</th>
                [% END %]
@@ -377,8 +376,8 @@ $.tablesorter.addParser({
                 <td><a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% RESERVE.biblionumber %]">[% RESERVE.reserves_title %]</a>
                     [% RESERVE.author %]
                 </td>
-                <td>[% RESERVE.reservedate %]</td>
-               <td>[% IF ( RESERVE.expirationdate ) %][% RESERVE.expirationdate %][% ELSE %]Never Expires[% END %]</td>
+                <td>[% RESERVE.reservedate | $KohaDates %]</td>
+        <td>[% IF ( RESERVE.expirationdate ) %][% RESERVE.expirationdate | $KohaDates %][% ELSE %]Never expires[% END %]</td>
                 <td>[% RESERVE.branch %]</td>
                                [% IF ( showpriority ) %]
                                <td>[% RESERVE.priority %] </td>
@@ -387,7 +386,7 @@ $.tablesorter.addParser({
                     [% IF ( RESERVE.wait ) %]
                         [% IF ( RESERVE.atdestination ) %]
                             [% IF ( RESERVE.found ) %]
-                            Item waiting at <b> [% RESERVE.wbrname %]</b>[% IF ( RESERVE.formattedwaitingdate ) %] since [% RESERVE.formattedwaitingdate %][% END %]
+                            Item waiting at <b> [% RESERVE.wbrname %]</b>[% IF ( RESERVE.waitingdate ) %] since [% RESERVE.waitingdate | $KohaDates %][% END %]
                             <input type="hidden" name="pickup" value="[% RESERVE.wbrcd %]" />
                             [% ELSE %]
                             Item waiting to be pulled from <b> [% RESERVE.wbrname %]</b>
@@ -398,7 +397,9 @@ $.tablesorter.addParser({
                     [% ELSE %]
                             [% IF ( RESERVE.intransit ) %]
                                 Item in transit from <b> [% RESERVE.frombranch %]</b> since 
-                                [% RESERVE.datesent %]
+                                [% RESERVE.datesent | $KohaDates %]
+                            [% ELSIF ( RESERVE.suspend ) %]
+                                Suspended [% IF ( RESERVE.suspend_until ) %] until [% RESERVE.suspend_until %] [% END %]
                             [% ELSE %]
                                 Pending
                             [% END %]
@@ -411,14 +412,66 @@ $.tablesorter.addParser({
                <input type="hidden" name="reservenumber" value="[% RESERVE.reservenumber %]" />
                        <input type="submit" name="submit" class="icon delete cancel" value="Cancel" onclick="return confirmDelete('Are you sure you want to cancel this hold?');" /></form>
                [% ELSE %]
-                       &nbsp;
                [% END %]
                </td>
 
+
             </tr>
             [% END %]
                        </tbody>
         </table>
+
+       <div>
+            <form action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
+              <input type="submit" name="submit" class="icon delete cancel" value="Suspend all holds" onclick="return confirmDelete('Are you sure you want to suspend all holds?');" />
+              <input type="hidden" name="suspend" value="1" />
+
+             [% IF AutoResumeSuspendedHolds %]
+             <label for="suspend_until"> until </label>
+              <input name="suspend_until" id="suspend_until" readonly="readonly" size="10">
+              <script language="JavaScript" type="text/javascript">
+              //<![CDATA[
+
+              var cal_img = document.createElement('img');
+              cal_img.src = "[% themelang %]/lib/calendar/cal.gif";
+              cal_img.alt = "Show Calendar";
+              cal_img.border = "0";
+              cal_img.id = "CalendarSuspendUntil";
+              cal_img.style.cursor = "pointer";
+              document.getElementById("suspend_until").parentNode.appendChild( cal_img );
+
+              function validate(date) {
+                  var today = new Date();
+                        if ( (date > today) ||
+                                ( date.getDate() == today.getDate() &&
+                                  date.getMonth() == today.getMonth() &&
+                                  date.getFullYear() == today.getFullYear() ) ) {
+                            return false;
+                        } else {
+                            return true;
+                        }
+              };
+              Calendar.setup(
+              {
+                inputField : "suspend_until",
+                ifFormat : "[% DHTMLcalendar_dateformat %]",
+                button : "CalendarSuspendUntil",
+                disableFunc : validate,
+                dateStatusFunc : validate
+              }
+              );
+              //]]>
+              </script>
+              <a href="#" style="font-size:85%;text-decoration:none;" onclick="document.getElementById('suspend_until').value='';return false;">Clear date</a></p>
+              [% END %]
+            </form>
+       </div>
+       <div>
+            <form action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
+              <input type="submit" name="submit" class="icon delete cancel" value="Resume all suspended holds" onclick="return confirmDelete('Are you sure you want to resume all suspended holds?');" />
+              <input type="hidden" name="suspend" value="0" />
+            </form>
+       </div>
     </div>
     [% END %]
     </div><!-- /opac-user views -->