ad0cd505eb
TEST PLAN 1. THE CHECKOUT TAB, INTRANET 1.1. Add a value to the 'h' subfield of an item. ie: 'volume #42' 1.2. Check out the item to a patron 1.3. Display this patron's issues in his checkout page 1.3.1. The enumchron should be concatenated with the title 2. A PATRON'S RELATIVE, INTRANET + OPAC 1.1. Add somebody to a patron's guarantee list 1.2. Checkout a serial to this guarantee 1.3. Visit the guarantor's OPAC and INTRANET checkout page 1.3.1. You should see the enumchron in his guarantee's issues Signed-off-by: Hector Castro <hector.hecaxmmx@gmail.com> Signed-off-by: Katrin Fischer <katrin.fischer@bsz-bw.de> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
802 lines
60 KiB
Text
802 lines
60 KiB
Text
[% USE Koha %]
|
||
[% USE KohaDates %]
|
||
[% USE Branches %]
|
||
[% USE ItemTypes %]
|
||
[% USE Price %]
|
||
|
||
[% INCLUDE 'doc-head-open.inc' %]
|
||
<title>[% IF ( LibraryNameTitle ) %][% LibraryNameTitle %][% ELSE %]Koha online[% END %] catalog › Your library home</title>
|
||
[% INCLUDE 'doc-head-close.inc' %]
|
||
[% BLOCK cssinclude %][% END %]
|
||
</head>
|
||
[% INCLUDE 'bodytag.inc' bodyid='opac-user' bodyclass='scrollto' %]
|
||
[% INCLUDE 'masthead.inc' %]
|
||
|
||
<div class="main">
|
||
<ul class="breadcrumb">
|
||
<li><a href="/cgi-bin/koha/opac-main.pl">Home</a> <span class="divider">›</span></li>
|
||
<li><a href="/cgi-bin/koha/opac-user.pl">[% INCLUDE 'patron-title.inc' category_type = BORROWER_INFO.category_type firstname = BORROWER_INFO.firstname surname = BORROWER_INFO.surname othernames = BORROWER_INFO.othernames cardnumber = BORROWER_INFO.cardnumber %]</a> <span class="divider">›</span></li>
|
||
<li><a href="#">Your summary</a></li>
|
||
</ul>
|
||
|
||
<div class="container-fluid">
|
||
<div class="row-fluid">
|
||
<div class="span2">
|
||
<div id="navigation">
|
||
[% INCLUDE 'navigation.inc' IsPatronPage=1 %]
|
||
</div>
|
||
</div>
|
||
<div class="span10">
|
||
<div id="userdetails" class="maincontent">
|
||
|
||
[% IF adminWarning %]
|
||
<div id="adminwarning" class="dialog alert">
|
||
<p>
|
||
<strong><i class="fa fa-exclamation-triangle"> </i> Warning:</strong>
|
||
Using this account is not recommended because some parts of Koha will not function as expected. Instead, please log in with a different account.
|
||
<a class="btn btn-small" href="/cgi-bin/koha/opac-main.pl?logout.x=1">
|
||
<i class="fa fa-sign-out"> </i> Log out</a>
|
||
</p>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF ( bor_messages ) %]
|
||
<div class="alert alert-info">
|
||
<h3>Messages for you</h3>
|
||
<ul>
|
||
[% FOREACH message IN patron_messages %]
|
||
<li>
|
||
<strong>[% message.message %]</strong><br>
|
||
<i>Written on [% message.message_date | $KohaDates %] by [% Branches.GetName(message.branchcode) %]</i>
|
||
</li>
|
||
[% END %]
|
||
|
||
[% IF ( opacnote ) %]<li>[% opacnote %]</li>[% END %]
|
||
</ul>
|
||
</div>
|
||
[% END %]
|
||
<h2>Hello, [% INCLUDE 'patron-title.inc' category_type = BORROWER_INFO.category_type firstname = BORROWER_INFO.firstname surname = BORROWER_INFO.surname othernames = BORROWER_INFO.othernames cardnumber = BORROWER_INFO.cardnumber %]
|
||
</h2>
|
||
|
||
<p><a href="/cgi-bin/koha/opac-main.pl?logout.x=1">Click here if you're not [% BORROWER_INFO.title %] [% INCLUDE 'patron-title.inc' category_type = BORROWER_INFO.category_type firstname = BORROWER_INFO.firstname surname = BORROWER_INFO.surname othernames = BORROWER_INFO.othernames cardnumber = BORROWER_INFO.cardnumber %]</a></p>
|
||
|
||
[% IF ( patronupdate ) %]<div class="alert alert-info"><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 failed_holds %]
|
||
<div class="alert alert-info">
|
||
<h3>Notice:</h3>
|
||
<p>One or more holds were not placed due to existing holds.</p>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF ( BORROWER_INFO.warndeparture ) %]
|
||
<div class="alert" id="warndeparture">
|
||
<strong>Please note:</strong><span> Your card will expire on <span id="warndeparture_date">[% BORROWER_INFO.warndeparture | $KohaDates %]</span>. Please contact the library for more information.</span>
|
||
[% IF ( BORROWER_INFO.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_INFO.warnexpired ) %]
|
||
<div class="alert" id="warnexpired">
|
||
<strong>Please note: </strong><span>Your account has expired as of [% BORROWER_INFO.warnexpired | $KohaDates %]. Please contact the library if you wish to renew your account.</span>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF ( RENEW_ERROR ) %]
|
||
<div class="dialog alert">
|
||
<strong>Please note:</strong>
|
||
<span>
|
||
Your loan renewal failed because of the following reason(s):
|
||
[% FOREACH error IN RENEW_ERROR.split('\|') %]
|
||
[% IF error == 'card_expired' %]
|
||
Your account has expired. Please contact the library for more information.
|
||
[% ELSIF error == 'too_many' %]
|
||
You have renewed this item the maximum number of times allowed.
|
||
[% ELSIF error == 'too_soon' %]
|
||
It is too soon after the checkout date for this item to be renewed.
|
||
[% ELSIF error == 'on_reserve' %]
|
||
This item is on hold for another patron.
|
||
[% END %]
|
||
[% END %]
|
||
</span>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF ( patron_flagged ) %]
|
||
<div class="alert">
|
||
<ul>
|
||
[% IF ( userdebarred ) %]
|
||
[% IF ( discharge_available ) %]
|
||
<li id="discharged">
|
||
<strong>Please note:</strong> Your account is frozen because it has been discharged. <a href="/cgi-bin/koha/opac-discharge.pl?op=get">Get your discharge</a>
|
||
</li>
|
||
[% ELSE %]
|
||
<li id="userdebarred"><strong>Please note:</strong> Your account has been frozen.
|
||
[% IF ( BORROWER_INFO.debarredcomment ) %] Comment: <span id="userdebarred_comment">"[% BORROWER_INFO.debarredcomment %]"</span>[% END %]
|
||
[% IF ( BORROWER_INFO.userdebarreddate ) %] End date: <span id="userdebarred_date">[% BORROWER_INFO.userdebarreddate | $KohaDates %]</span>[% END %]
|
||
<em>Usually the reason for freezing an account is old overdues or damage fees. If your account shows to be clear, please contact the library.</em> <a href="/cgi-bin/koha/opac-account.pl">Go to your account page</a></li>
|
||
[% END %]
|
||
[% END %]
|
||
[% IF ( BORROWER_INFO.gonenoaddress ) %]
|
||
<li id="gonenoaddress"><strong>Please note:</strong> According to our records, we don't have up-to-date contact information. Please contact the library.
|
||
<a href="/cgi-bin/koha/opac-memberentry.pl">[% IF ( Koha.Preference('OPACPatronDetails') ) %]Update your contact information[% ELSE %]Go to your contact information[% END %]</a>
|
||
[% IF ( Koha.Preference('OPACPatronDetails') ) %]<em>(Please note: there may be a delay in restoring your account if you submit online.)</em>[% END %]
|
||
</li>
|
||
[% END %]
|
||
[% IF ( BORROWER_INFO.lost ) %]
|
||
<li id="lost"><strong>Please note: </strong> Your library card has been marked as lost or stolen. <em>If this is an error, please contact the library.</em></li>
|
||
[% END %]
|
||
[% IF ( renewal_blocked_fines.defined ) && ( OpacRenewalAllowed ) %]
|
||
<li id="renewal_blocked_fines"><strong>Please note: </strong>You cannot renew your books online. Reason: [% IF ( renewal_blocked_fines ) > 0 %]Your fines exceed <span id="renewal_blocked_fines_amount">[% renewal_blocked_fines | $Price %]</span>.[% ELSE %]You have fines.[% END %]
|
||
[% END %]
|
||
</ul>
|
||
</div>
|
||
[% END # / IF patron_flagged %]
|
||
|
||
[% SET OPACMySummaryNote = Koha.Preference('OPACMySummaryNote') %]
|
||
[% IF OPACMySummaryNote %][% OPACMySummaryNote %][% END %]
|
||
|
||
<div id="opac-user-views" class="toptabs">
|
||
<ul>
|
||
<li><a href="#opac-user-checkouts">Checked out ([% issues_count %])</a></li>
|
||
[% IF relatives %]<li><a href="#opac-user-relative-issues">Relatives' checkouts</a></li>[% END %]
|
||
[% IF ( overdues_count ) %]<li><a href="#opac-user-overdues">Overdue ([% overdues_count %])</a></li>[% END %]
|
||
[% IF ( OPACFinesTab ) %]
|
||
[% IF ( BORROWER_INFO.amountoverfive ) %]<li><a href="#opac-user-fines">Fines ([% BORROWER_INFO.amountoutstanding | $Price %])</a></li>[% END %]
|
||
[% IF ( BORROWER_INFO.amountoverzero ) %]<li><a href="#opac-user-fines">Fines ([% BORROWER_INFO.amountoutstanding | $Price %])</a></li>[% END %]
|
||
[% IF ( BORROWER_INFO.amountlessthanzero ) %]<li><a href="#opac-user-fines">Credits ([% BORROWER_INFO.amountoutstanding | $Price %])</a></li>[% END %]
|
||
[% END %]
|
||
[% IF ( RESERVES.count ) %]<li><a href="#opac-user-holds">Holds ([% RESERVES.count %])</a></li>[% END %]
|
||
</ul>
|
||
|
||
<div id="opac-user-checkouts">
|
||
[% IF ( issues_count ) %]
|
||
<form id="renewselected" action="/cgi-bin/koha/opac-renew.pl" method="post">
|
||
<input type="hidden" name="borrowernumber" value="[% borrowernumber %]">
|
||
<input type="hidden" name="from" value="opac_user" />
|
||
<table id="checkoutst" class="table table-bordered table-striped">
|
||
<caption>[% issues_count %] Item(s) checked out</caption>
|
||
<thead>
|
||
<tr>
|
||
[% IF ( JacketImages ) %]<th class="nosort"> </th>[% END %]
|
||
<th class="anti-the">Title</th>
|
||
<th class="title-string psort">Due</th>
|
||
[% UNLESS ( item_level_itypes ) %]
|
||
<th>Item type</th>
|
||
[% END %]
|
||
[% IF ( show_barcode ) %]
|
||
<th>Barcode</th>
|
||
[% END %]
|
||
<th>Call no.</th>
|
||
[% IF ( OpacRenewalAllowed && !( borrower.is_expired && borrower.BlockExpiredPatronOpacActions ) ) %]
|
||
<th class="nosort">Renew</th>
|
||
[% END %]
|
||
[% IF ( OPACFinesTab ) %]
|
||
<th>Fines</th>
|
||
[% END %]
|
||
[% IF ( OPACMySummaryHTML ) %]
|
||
<th class="nosort">Links</th>
|
||
[% END %]
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
[% FOREACH ISSUE IN ISSUES %]
|
||
[% IF ( ISSUE.overdue ) %]<tr class="overdue">[% ELSE %]<tr>[% END %]
|
||
[% IF ( JacketImages ) %]<td class="jacketcell">
|
||
|
||
[% 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 on Amazon.com"><img src="https://images-na.ssl-images-amazon.com/images/P/[% ISSUE.normalized_isbn %].01.THUMBZZZ.jpg" alt="View on Amazon.com" class="item-thumbnail"/></a>
|
||
[% ELSE %]
|
||
<a href="#"><span class="no-image">No cover image available</span></a>
|
||
[% END %]
|
||
[% END %]
|
||
|
||
[% 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 %]
|
||
|
||
[% IF ( BakerTaylorEnabled ) %]
|
||
[% bt_id = ( ISSUE.normalized_upc || ISSUE.normalized_isbn ) %]
|
||
[% IF ( bt_id ) %]
|
||
<a href="https://[% BakerTaylorBookstoreURL |html %][% bt_id %]"><img alt="See Baker & Taylor" src="[% BakerTaylorImageURL |html %][% bt_id %]" /></a>
|
||
[% ELSE %]
|
||
<span class="no-image">No cover image available</span><!-- BakerTaylor needs normalized_upc or normalized_isbn! -->
|
||
[% END %]
|
||
[% END %]
|
||
|
||
[% IF ( SyndeticsEnabled && SyndeticsCoverImages ) %]
|
||
[% IF ( using_https ) %]
|
||
<img src="https://secure.syndetics.com/index.aspx?isbn=[% ISSUE.normalized_isbn %]/SC.GIF&client=[% SyndeticsClientCode %]&type=xw10&upc=[% ISSUE.normalized_upc %]&oclc=[% ISSUE.normalized_oclc %]" alt="" class="item-thumbnail" />
|
||
[% ELSE %]
|
||
<img src="http://www.syndetics.com/index.aspx?isbn=[% ISSUE.normalized_isbn %]/SC.GIF&client=[% SyndeticsClientCode %]&type=xw10&upc=[% ISSUE.normalized_upc %]&oclc=[% ISSUE.normalized_oclc %]" alt="" class="item-thumbnail" />
|
||
[% END %]
|
||
[% END %]
|
||
|
||
</td>[% END # / IF JacketImages %]
|
||
|
||
<td class="title">
|
||
<a class="title" href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% ISSUE.biblionumber %]">[% ISSUE.title |html %] [% FOREACH subtitl IN ISSUE.subtitle %] [% subtitl.subfield %][% END %]</a>
|
||
[% IF ( ISSUE.enumchron ) %] [% ISSUE.enumchron %][% END %]
|
||
<span class="item-details">[% ISSUE.author %]</span>
|
||
</td>
|
||
[% IF ( ISSUE.overdue ) %]
|
||
<td class="date_due overdue">
|
||
<span title="[% ISSUE.date_due %]">
|
||
<span class="tdlabel">Date due:</span>
|
||
[% ISSUE.date_due_sql | $KohaDates as_due_date => 1 %]
|
||
</span>
|
||
</td>
|
||
[% ELSE %]
|
||
<td class="date_due">
|
||
<span title="[% ISSUE.date_due %]">
|
||
<span class="tdlabel">Date due:</span>
|
||
[% ISSUE.date_due_sql | $KohaDates as_due_date => 1 %]
|
||
</span>
|
||
</td>
|
||
[% END %]
|
||
[% UNLESS ( item_level_itypes ) %]
|
||
<td class="itype">
|
||
<span class="tdlabel">Item type:</span>
|
||
[% IF ( ISSUE.imageurl ) %]
|
||
<img src="[% ISSUE.imageurl %]" title="[% ISSUE.description %]" alt="[% ISSUE.description %]" />
|
||
[% END %] [% ISSUE.description %]
|
||
</td>
|
||
[% END %]
|
||
[% IF ( show_barcode ) %]
|
||
<td class="barcode">
|
||
<span class="tdlabel">Barcode:</span>
|
||
[% ISSUE.barcode %]
|
||
</td>
|
||
[% END %]
|
||
<td class="call_no">
|
||
<span class="tdlabel">Call no.:</span>
|
||
[% ISSUE.itemcallnumber %]
|
||
</td>
|
||
[% IF ( OpacRenewalAllowed && !( borrower.is_expired && borrower.BlockExpiredPatronOpacActions ) ) %]
|
||
<td class="renew">
|
||
[% IF ISSUE.renewed %]<span class="blabel label-success">Renewed!</span><br />[% END %]
|
||
[% IF ( ISSUE.status ) %]
|
||
[% IF ( canrenew ) %]
|
||
<input type="checkbox" name="item" value="[% ISSUE.itemnumber %]"/> <a href="/cgi-bin/koha/opac-renew.pl?from=opac_user&item=[% ISSUE.itemnumber %]&borrowernumber=[% ISSUE.borrowernumber %]">Renew</a>
|
||
[% END %]
|
||
<span class="renewals">([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining)</span>
|
||
[% ELSIF ( ISSUE.on_reserve ) %]
|
||
Not renewable <span class="renewals">(on hold)</span>
|
||
[% ELSIF ( ISSUE.too_many ) %]
|
||
Not renewable
|
||
[% ELSIF ( ISSUE.norenew_overdue ) %]
|
||
Not allowed <span class="renewals">(overdue)</span>
|
||
[% ELSIF ( ISSUE.auto_renew || ISSUE.auto_too_soon ) %]
|
||
Automatic renewal
|
||
<span class="renewals">([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining)</span>
|
||
[% ELSIF ( ISSUE.too_soon ) %]
|
||
No renewal before [% ISSUE.soonestrenewdate %]
|
||
<span class="renewals">([% ISSUE.renewsleft %] of [% ISSUE.renewsallowed %] renewals remaining)</span>
|
||
[% END %]
|
||
</td>
|
||
[% END %]
|
||
[% IF ( OPACFinesTab ) %]
|
||
<td class="fines">
|
||
<span class="tdlabel">Fines:</span>
|
||
[% IF ( ISSUE.charges ) %]
|
||
Yes
|
||
[% ELSE %]
|
||
No
|
||
[% END %]
|
||
</td>
|
||
[% END %]
|
||
[% IF ( OPACMySummaryHTML ) %]
|
||
<td class="links">[% ISSUE.MySummaryHTML %]</td>
|
||
[% END %]
|
||
</tr>
|
||
[% END # /FOREACH ISSUES %]
|
||
</tbody>
|
||
</table>
|
||
[% IF ( canrenew && !userdebarred && OpacRenewalAllowed && !( borrower.is_expired && borrower.BlockExpiredPatronOpacActions ) ) %]
|
||
<input type="submit" class="btn" value="Renew selected" />
|
||
[% END %]
|
||
</form>
|
||
|
||
[% IF ( canrenew && !userdebarred && OpacRenewalAllowed && !( borrower.is_expired && borrower.BlockExpiredPatronOpacActions ) ) %]
|
||
<form id="renewall" action="/cgi-bin/koha/opac-renew.pl" method="post">
|
||
<input type="hidden" name="from" value="opac_user" />
|
||
<input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
|
||
[% FOREACH ISSUE IN ISSUES %]
|
||
<input type="hidden" name="item" value="[% ISSUE.itemnumber %]" />
|
||
[% END %]
|
||
<input type="submit" class="btn" value="Renew all" />
|
||
</form>
|
||
[% END %]
|
||
<p><a href="opac-ics.pl">Download as iCal/.ics file</a></p>
|
||
[% ELSE %]
|
||
<table class="table table-bordered table-striped">
|
||
<tr><td>You have nothing checked out</td></tr>
|
||
</table>
|
||
[% END # IF issues_count %]
|
||
</div> <!-- / .opac-user-checkouts -->
|
||
|
||
[% IF ( OPACFinesTab ) %]
|
||
<!-- FINES BOX -->
|
||
[% IF BORROWER_INFO.amountoverfive %]
|
||
<div id="opac-user-fines"> <h3>Fines and charges</h3>
|
||
<table class="table table-bordered table-striped">
|
||
<thead><tr><th colspan="2">Amount</th></tr></thead>
|
||
<tbody>
|
||
<tr>
|
||
<td>You currently owe fines and charges amounting to:</td>
|
||
<td><a href="/cgi-bin/koha/opac-account.pl">[% BORROWER_INFO.amountoutstanding | $Price %]</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF BORROWER_INFO.amountoverzero %]
|
||
<div id="opac-user-fines"> <h3>Fines and charges</h3>
|
||
<table class="table table-bordered table-striped">
|
||
<thead><tr><th colspan="2">Amount</th></tr></thead>
|
||
<tbody>
|
||
<tr>
|
||
<td>You currently owe fines and charges amounting to:</td>
|
||
<td><a href="/cgi-bin/koha/opac-account.pl">[% BORROWER_INFO.amountoutstanding %]</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF BORROWER_INFO.amountlessthanzero %]
|
||
<div id="opac-user-fines"> <h3>Credits</h3>
|
||
<table class="table table-bordered table-striped">
|
||
<thead><tr><th colspan="2">Amount</th></tr></thead>
|
||
<tbody>
|
||
<tr>
|
||
<td>You have a credit of:</td><td><a href="/cgi-bin/koha/opac-account.pl">[% BORROWER_INFO.amountoutstanding %]</a></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
[% END %]
|
||
[% END # / OPACFinesTab %]
|
||
|
||
[% IF relatives %]
|
||
<div id="opac-user-relative-issues">
|
||
<table id="opac-user-relative-issues-table" class="table table-bordered table-striped">
|
||
<thead>
|
||
<tr>
|
||
<th class="anti-the">Title</th>
|
||
<th>Due</th>
|
||
<th>Barcode</th>
|
||
<th>Call no.</th>
|
||
<th class="psort">Relative</th>
|
||
</tr>
|
||
</thead>
|
||
|
||
<tbody>
|
||
[% FOREACH r IN relatives %]
|
||
[% FOREACH i IN r.issues %]
|
||
<tr>
|
||
<td>
|
||
<a href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% i.item.biblio.biblionumber %]">
|
||
[% i.item.biblio.title %][% IF ( i.item.enumchron ) %] [% i.item.enumchron %][% END %]
|
||
</a>
|
||
</td>
|
||
|
||
<td>
|
||
[% i.date_due | $KohaDates %]
|
||
</td>
|
||
|
||
<td>
|
||
[% i.item.barcode %]
|
||
</td>
|
||
|
||
<td>
|
||
[% i.item.itemcallnumber %]
|
||
</td>
|
||
|
||
<td>
|
||
[% r.firstname %] [% r.surname %]
|
||
</td>
|
||
</tr>
|
||
[% END %]
|
||
[% END %]
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
[% END %]
|
||
|
||
[% IF ( overdues_count ) %]
|
||
<div id="opac-user-overdues">
|
||
<table id="overduest" class="table table-bordered table-striped">
|
||
<caption>Overdues <span class="count">([% overdues_count %] total)</span></caption>
|
||
<!-- OVERDUES TABLE ROWS -->
|
||
<thead>
|
||
<tr>
|
||
[% IF ( JacketImages ) %]<th class="nosort"> </th>[% END %]
|
||
<th class="anti-the">Title</th>
|
||
[% UNLESS ( item_level_itypes ) %]<th>Item type</th> [% END %]
|
||
[% IF ( show_barcode ) %]<th>Barcode</th>[% END %]
|
||
<th>Call no.</th>
|
||
<th class="title-string psort">Due</th>
|
||
[% IF ( OpacRenewalAllowed ) %]
|
||
<th class="nosort">Renew</th>
|
||
[% END %]
|
||
[% IF ( OPACFinesTab ) %]
|
||
<th>Fines</th>
|
||
[% END %]
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
[% FOREACH OVERDUE IN OVERDUES %]
|
||
<tr>
|
||
[% IF ( JacketImages ) %]
|
||
<td class="jacketcell">
|
||
[% 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 on Amazon.com"><img src="https://images-na.ssl-images-amazon.com/images/P/[% OVERDUE.normalized_isbn %].01.THUMBZZZ.jpg" alt="View on Amazon.com" class="item-thumbnail" /></a>
|
||
[% ELSE %]
|
||
<a href="#"><span class="no-image">No cover image available</span></a>
|
||
[% END %]
|
||
[% END %]
|
||
|
||
[% 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 %]
|
||
|
||
[% IF ( BakerTaylorEnabled ) %]
|
||
[% bt_id = ( OVERDUE.normalized_upc || OVERDUE.normalized_isbn ) %]
|
||
[% IF ( bt_id ) %]
|
||
<a href="https://[% BakerTaylorBookstoreURL |html %][% bt_id %]"><img alt="See Baker & Taylor" src="[% BakerTaylorImageURL |html %][% bt_id %]" /></a>
|
||
[% ELSE %]
|
||
<span class="no-image">No cover image available</span><!-- BakerTaylor needs normalized_upc or normalized_isbn! -->
|
||
[% END %]
|
||
[% END %]
|
||
|
||
[% IF ( SyndeticsCoverImages ) %]
|
||
[% IF ( using_https ) %]
|
||
<img src="https://secure.syndetics.com/index.aspx?isbn=[% OVERDUE.normalized_isbn %]/SC.GIF&client=[% SyndeticsClientCode %]&upc=[% OVERDUE.normalized_upc %]&oclc=[% OVERDUE.normalized_oclc %]&type=xw10" alt="" class="item-thumbnail" />
|
||
[% ELSE %]
|
||
<img src="http://www.syndetics.com/index.aspx?isbn=[% OVERDUE.normalized_isbn %]/SC.GIF&client=[% SyndeticsClientCode %]&upc=[% OVERDUE.normalized_upc %]&oclc=[% OVERDUE.normalized_oclc %]&type=xw10" alt="" class="item-thumbnail" />
|
||
[% END %]
|
||
[% END %]
|
||
</td>
|
||
[% END # /IF jacketcell %]
|
||
|
||
<td>
|
||
<a class="title" 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>
|
||
|
||
[% 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>
|
||
<span class="tdlabel">Barcode:</span>
|
||
[% OVERDUE.barcode %]
|
||
</td>
|
||
[% END %]
|
||
<td>
|
||
<span class="tdlabel">Call no.:</span>
|
||
[% OVERDUE.itemcallnumber %]
|
||
</td>
|
||
<td>
|
||
<span title="[% OVERDUE.date_due %]">
|
||
<span class="tdlabel">Date due:</span>
|
||
[% OVERDUE.date_due_sql | $KohaDates as_due_date => 1 %]
|
||
</span>
|
||
</td>
|
||
[% IF ( OpacRenewalAllowed ) %]
|
||
<td>
|
||
[% IF ( OVERDUE.debarred ) %]
|
||
Account frozen
|
||
[% ELSIF ( OVERDUE.status ) %]
|
||
[% IF ( canrenew ) %]
|
||
<a href="/cgi-bin/koha/opac-renew.pl?from=opac_user&item=[% OVERDUE.itemnumber %]&bornum=[% OVERDUE.borrowernumber %]">Renew</a>
|
||
[% END %]
|
||
<span class="renewals">([% OVERDUE.renewsleft %] of [% OVERDUE.renewsallowed %] renewals remaining)</span>
|
||
[% ELSIF ( OVERDUE.norenew_overdue ) %]
|
||
Not allowed<span class="renewals">(overdue)</span>
|
||
[% ELSIF ( OVERDUE.onreserve ) %]
|
||
On hold
|
||
[% ELSE %]
|
||
No renewals left
|
||
[% END %]
|
||
</td>
|
||
[% END %]
|
||
[% IF ( OPACFinesTab ) %]
|
||
<td>
|
||
<span class="tdlabel">Fines:</span>
|
||
[% IF ( OVERDUE.charges ) %]
|
||
Yes
|
||
[% ELSE %]
|
||
No
|
||
[% END %]
|
||
</td>
|
||
[% END %]
|
||
</tr>
|
||
[% END %]
|
||
</tbody>
|
||
</table>
|
||
</div> <!-- / #opac-user-overdues -->
|
||
[% END # /overdues_count %]
|
||
|
||
|
||
[% IF ( RESERVES.count ) %]
|
||
<div id="opac-user-holds">
|
||
<table id="holdst" class="table table-bordered table-striped">
|
||
<caption>Holds <span class="count">([% RESERVES.count %] total)</span></caption>
|
||
<!-- RESERVES TABLE ROWS -->
|
||
<thead>
|
||
<tr>
|
||
<th class="anti-the">Title</th>
|
||
<th class="psort">Placed on</th>
|
||
<th>Expires on</th>
|
||
<th>Pick up location</th>
|
||
[% IF ( showpriority ) %]
|
||
<th>Priority</th>
|
||
[% END %]
|
||
<th>Status</th>
|
||
[% IF SuspendHoldsOpac %]
|
||
<th class="nosort" >Suspend</th>
|
||
[% END %]
|
||
<th class="nosort">Modify</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
[% FOREACH RESERVE IN RESERVES %]
|
||
[% IF ( RESERVE.is_waiting ) %]
|
||
[% IF ( RESERVE.is_at_destination ) %]
|
||
[% IF ( RESERVE.is_found ) %]
|
||
<tr class="reserved">
|
||
[% ELSE %]
|
||
<tr>
|
||
[% END %]
|
||
[% ELSE %]
|
||
<tr class="transfered">
|
||
[% END %]
|
||
[% ELSE %]
|
||
<tr>
|
||
[% END %]
|
||
<td class="title">
|
||
<a class="title" href="/cgi-bin/koha/opac-detail.pl?biblionumber=[% RESERVE.biblionumber %]">
|
||
[% RESERVE.biblio.title %]
|
||
[% FOREACH s IN RESERVE.biblio.subtitles %]
|
||
[% s %]
|
||
[% END %]
|
||
[% RESERVE.item.enumchron %]
|
||
</a>
|
||
[% RESERVE.biblio.author %]
|
||
</td>
|
||
<td class="reservedate">
|
||
<span title="[% RESERVE.reservedate %]">
|
||
<span class="tdlabel">Hold date:</span>
|
||
[% RESERVE.reservedate | $KohaDates %]
|
||
</span>
|
||
</td>
|
||
<td class="expirationdate">
|
||
[% IF ! RESERVE.found %]
|
||
[% IF ( RESERVE.expirationdate ) %]
|
||
<span>
|
||
<span class="tdlabel">Expiration:</span>
|
||
[% RESERVE.expirationdate | $KohaDates %]
|
||
</span>
|
||
[% ELSE %]
|
||
<span class="tdlabel">Expiration:</span>
|
||
Never expires
|
||
[% END %]
|
||
[% ELSE %]
|
||
-
|
||
[% END %]
|
||
</td>
|
||
<td class="branch">
|
||
<span class="tdlabel">Pick up location:</span>
|
||
[% RESERVE.branch.branchname %]
|
||
</td>
|
||
[% IF ( showpriority ) %]
|
||
<td class="priority">
|
||
<span class="tdlabel">Priority:</span>
|
||
[% RESERVE.priority %]
|
||
</td>
|
||
[% END %]
|
||
<td class="status">
|
||
<span class="tdlabel">Status:</span>
|
||
[% IF ( RESERVE.is_waiting ) %]
|
||
[% IF ( RESERVE.is_at_destination ) %]
|
||
[% IF ( RESERVE.found ) %]
|
||
Item waiting at <b> [% RESERVE.branch.branchname %]</b>
|
||
[% IF ( RESERVE.waitingdate ) %]
|
||
since [% RESERVE.waitingdate | $KohaDates %]
|
||
[% IF RESERVE.waiting_expires_on %]
|
||
until [% RESERVE.waiting_expires_on | $KohaDates %]
|
||
[% END %]
|
||
[% END %]
|
||
<input type="hidden" name="pickup" value="[% RESERVE.branchcode %]" />
|
||
[% ELSE %]
|
||
Item waiting to be pulled from <b> [% Branches.GetName( RESERVE.branchcode ) %]</b>
|
||
[% END %]
|
||
[% ELSE %]
|
||
Item in transit to <b> [% Branches.GetName( RESERVE.branchcode ) %]</b> <input type="hidden" name="pickup" value="[% RESERVE.branchcode %]" />
|
||
[% END %]
|
||
[% ELSE %]
|
||
[% IF ( RESERVE.is_in_transit ) %]
|
||
[% SET transfer = RESERVE.item.get_transfer %]
|
||
Item in transit from <b> [% Branches.GetName( transfer.frombranch ) %]</b> since
|
||
[% transfer.datesent | $KohaDates %]
|
||
[% ELSIF ( RESERVE.suspend ) %]
|
||
Suspended [% IF ( RESERVE.suspend_until ) %] until [% RESERVE.suspend_until %] [% END %]
|
||
[% ELSE %]
|
||
[% IF RESERVE.itemtype %]
|
||
Pending for next available item of item type '[% ItemTypes.GetDescription( RESERVE.itemtype ) %]'
|
||
[% ELSE %]
|
||
Pending
|
||
[% END %]
|
||
[% END %]
|
||
[% END %]
|
||
</td>
|
||
[% IF SuspendHoldsOpac %]
|
||
<td>
|
||
[% IF ( RESERVE.is_cancelable ) %]
|
||
[% IF RESERVE.suspend %]
|
||
<form class="form-inline" action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
|
||
<input type="hidden" name="reserve_id" value="[% RESERVE.reserve_id %]" />
|
||
<button class="btn btn-link" type="submit" name="submit"><i class="icon-play"></i> Resume</button>
|
||
</form>
|
||
[% ELSE %]
|
||
[% IF AutoResumeSuspendedHolds %]
|
||
<a class="btn btn-link js-show" href="#suspendModal[% RESERVE.reserve_id %]" role="button" data-toggle="modal"><i class="icon-pause"></i> Suspend</a>
|
||
[% # hold suspend modal form %]
|
||
<div id="suspendModal[% RESERVE.reserve_id %]" class="modal-nojs" tabindex="-1" role="dialog" aria-labelledby="suspendModal[% RESERVE.reserve_id %]Label" aria-hidden="true">
|
||
<form class="form-inline" action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
|
||
<div class="modal-header">
|
||
<button type="button" class="closebtn" data-dismiss="modal" aria-hidden="true">×</button>
|
||
[% IF RESERVE.suspend %]
|
||
<h3 id="suspendModal[% RESERVE.reserve_id %]Label">Resume your hold on <i>[% RESERVE.biblio.title %]</i></h3>
|
||
[% ELSE %]
|
||
<h3 id="suspendModal[% RESERVE.reserve_id %]Label">Suspend your hold on <i>[% RESERVE.biblio.title %]</i></h3>
|
||
[% END %]
|
||
</div>
|
||
<div class="modal-body">
|
||
<input type="hidden" name="reserve_id" value="[% RESERVE.reserve_id %]" />
|
||
<label for="suspend_until_[% RESERVE.reserve_id %]">Suspend until:</label>
|
||
<input name="suspend_until" id="suspend_until_[% RESERVE.reserve_id %]" class="suspend-until" size="10" />
|
||
[% INCLUDE 'date-format.inc' %]
|
||
<p class="js-show"><a href="#" onclick="document.getElementById('suspend_until_[% RESERVE.reserve_id %]').value='';return false;">Clear date to suspend indefinitely</a></p>
|
||
<button class="btn btn-mini js-hide" type="submit" name="submit">Suspend</button>
|
||
</div>
|
||
<div class="modal-footer">
|
||
<button class="btn btn-primary" type="submit" name="submit">Suspend</button>
|
||
<a href="#" data-dismiss="modal" aria-hidden="true" class="cancel">Cancel</a>
|
||
</div>
|
||
</form>
|
||
</div> <!-- /#suspendModal[% RESERVE.reserve_id %] -->
|
||
[% ELSE %]
|
||
<form class="form-inline" action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
|
||
<input type="hidden" name="reserve_id" value="[% RESERVE.reserve_id %]" />
|
||
<button class="btn btn-link" type="submit" name="submit"><i class="icon-pause"></i> Suspend</button>
|
||
</form>
|
||
[% END # / IF AutoResumeSuspendedHolds %]
|
||
[% END # / IF RESERVE.suspend %]
|
||
[% END # / IF ( RESERVE.is_cancelable )%]
|
||
</td>
|
||
[% END # / IF SuspendHoldsOpac %]
|
||
<td class="modify">
|
||
[% IF ( RESERVE.is_cancelable ) %]
|
||
<form action="/cgi-bin/koha/opac-modrequest.pl" method="post">
|
||
<input type="hidden" name="biblionumber" value="[% RESERVE.biblionumber %]" />
|
||
<input type="hidden" name="reserve_id" value="[% RESERVE.reserve_id %]" />
|
||
<button type="submit" name="submit" class="btn btn-mini btn-danger" onclick="return confirmDelete(MSG_CONFIRM_DELETE_HOLD);"><i class="icon-remove icon-white"></i> Cancel</button></form>
|
||
[% END %]
|
||
</td>
|
||
</tr>
|
||
[% END # /FOREACH RESERVES %]
|
||
</tbody>
|
||
</table>
|
||
|
||
[% IF SuspendHoldsOpac %]
|
||
<div>
|
||
<form class="form-inline" action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
|
||
<button type="submit" name="submit" class="btn" onclick="return confirmDelete(MSG_CONFIRM_SUSPEND_HOLDS);"><i class="icon-pause"></i> Suspend all holds</button>
|
||
<input type="hidden" name="suspend" value="1" />
|
||
|
||
[% IF AutoResumeSuspendedHolds %]
|
||
<label for="suspend_until"> until </label>
|
||
<input name="suspend_until" id="suspend_until" class="suspend-until" readonly="readonly" size="10" />
|
||
<a href="#" style="font-size:85%;text-decoration:none;" onclick="document.getElementById('suspend_until').value='';return false;">Clear date to suspend indefinitely</a>
|
||
[% END %]
|
||
</form>
|
||
</div>
|
||
<br/>
|
||
<div>
|
||
<form action="/cgi-bin/koha/opac-modrequest-suspend.pl" method="post">
|
||
<button type="submit" name="submit" class="btn" onclick="return confirmDelete(MSG_CONFIRM_RESUME_HOLDS);"><i class="icon-play"></i> Resume all suspended holds</button>
|
||
<input type="hidden" name="suspend" value="0" />
|
||
</form>
|
||
</div>
|
||
[% END %]
|
||
</div> <!-- / #opac-user-holds -->
|
||
[% END # / #RESERVES.count %]
|
||
</div> <!-- /#opac-user-views -->
|
||
</div> <!-- /#userdetails -->
|
||
</div> <!-- /.span10 -->
|
||
</div> <!-- /.row-fluid -->
|
||
</div> <!-- /.container-fluid -->
|
||
</div> <!-- /#main -->
|
||
|
||
[% INCLUDE 'opac-bottom.inc' %]
|
||
|
||
|
||
[% BLOCK jsinclude %]
|
||
[% INCLUDE 'calendar.inc' %]
|
||
[% INCLUDE 'datatables.inc' %]
|
||
<script type="text/JavaScript">
|
||
//<![CDATA[
|
||
var MSG_CONFIRM_DELETE_HOLD = _("Are you sure you want to cancel this hold?");
|
||
var MSG_CONFIRM_SUSPEND_HOLDS = _("Are you sure you want to suspend all holds?");
|
||
var MSG_CONFIRM_RESUME_HOLDS = _("Are you sure you want to resume all suspended holds?");
|
||
|
||
$(document).ready(function(){
|
||
$('#opac-user-views').tabs();
|
||
$(".js-show").show();
|
||
$(".js-hide").hide();
|
||
$(".modal-nojs").addClass("modal").addClass("hide").removeClass("modal-nojs");
|
||
$(".suspend-until").prop("readonly",1);
|
||
|
||
var dTables = $("#checkoutst,#holdst,#overduest,#opac-user-relative-issues-table");
|
||
dTables.each(function(){
|
||
var thIndex = $(this).find("th.psort").index();
|
||
$(this).dataTable($.extend(true, {}, dataTablesDefaults, {
|
||
"aaSorting" : [[ thIndex, 'asc' ]],
|
||
"aoColumnDefs": [
|
||
{ "aTargets": [ "nosort" ],"bSortable": false,"bSearchable": false },
|
||
{ "sType": "anti-the", "aTargets" : [ "anti-the" ] },
|
||
{ "sType": "title-string", "aTargets" : [ "title-string" ] }
|
||
]
|
||
}));
|
||
});
|
||
|
||
[% IF ( GoogleJackets ) %]KOHA.Google.GetCoverFromIsbn();[% END %]
|
||
[% IF ( OpacRenewalAllowed && canrenew && !userdebarred ) %]
|
||
$("#renewselected").submit(function(){
|
||
valid = false;
|
||
$("input[type=checkbox]").each(function(){
|
||
if($(this).is(':checked')){
|
||
valid = true;
|
||
}
|
||
});
|
||
if(!valid){
|
||
alert(_("Nothing has been selected. Check the box for each item you want to renew"));
|
||
}
|
||
return valid;
|
||
});
|
||
$("body").on("click","#renewselected_link",function(e){
|
||
e.preventDefault();
|
||
$("#renewselected").submit();
|
||
});
|
||
$("body").on("click","#renewall_link",function(e){
|
||
e.preventDefault();
|
||
$("#renewall").submit();
|
||
});
|
||
[% IF ( canrenew && !userdebarred && OpacRenewalAllowed && !( borrower.is_expired && borrower.BlockExpiredPatronOpacActions ) ) %]
|
||
$("#checkoutst caption").append("<div id=\"renewcontrols\"><a id=\"renewselected_link\" href=\"#\">"+_("Renew selected")+"</a> <a id=\"renewall_link\" href=\"#\">"+_("Renew all")+"</a></div>");
|
||
[% END %]
|
||
[% END %]
|
||
|
||
$( ".suspend-until" ).datepicker({ minDate: 1 }); // Require that "until date" be in the future
|
||
});
|
||
//]]>
|
||
</script>
|
||
[% END %]
|