</title>
[% INCLUDE 'doc-head-close.inc' %]
[% INCLUDE 'calendar.inc' %]
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.tablesorter.min.js"></script>
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
-<script type="text/javascript" src="[% themelang %]/lib/jquery/plugins/jquery-ui-timepicker-addon.js"></script>
-<script type="text/JavaScript" language="JavaScript">
+<link rel="stylesheet" type="text/css" href="[% themelang %]/css/datatables.css" />
+[% INCLUDE 'datatables.inc' %]
+<script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery.checkboxes.min.js"></script>
+<script type="text/javascript" src="[% interface %]/lib/jquery/plugins/jquery-ui-timepicker-addon.min.js"></script>
+[% INCLUDE 'timepicker.inc' %]
+<script type="text/JavaScript">
//<![CDATA[
-$.tablesorter.addParser({
- id: 'articles',
- is: function(s) {return false; },
- format: function(s) { return s.toLowerCase().replace(/^(the|an|a) /,''); },
- type: 'text'
-});
$(document).ready(function() {
- $('#finesholdsissues').tabs();
- $.tablesorter.defaults.widgets = ['zebra'];
- $("#issuest").tablesorter({[% IF ( dateformat_metric ) %]
- dateFormat: 'uk',[% END %]
- headers: { 1: { sorter: 'articles'},8:{sorter:false},9:{sorter:false }}
- });
- $("#relissuest").tablesorter({[% IF ( dateformat_metric ) %]
- dateFormat: 'uk',[% END %]
- headers: { 1: { sorter: 'articles'},8:{sorter:false},9:{sorter:false }}
- });
- $("#holdst").tablesorter({[% IF ( dateformat_metric ) %]
- dateFormat: 'uk',[% END %]
- sortList: [[0,0]],
- headers: { 1: { sorter: 'articles' },5: { sorter: false }}
- });
+ $('#finesholdsissues').tabs({
+ // Correct table sizing for tables hidden in tabs
+ // http://www.datatables.net/examples/api/tabs_and_scrolling.html
+ "show": function(event, ui) {
+ var oTable = $('div.dataTables_wrapper>table', ui.panel).dataTable();
+ if ( oTable.length > 0 ) {
+ oTable.fnAdjustColumnSizing();
+ }
+ }
+ } );
+ $("#issuest").dataTable($.extend(true, {}, dataTablesDefaults, {
+ "sDom": 't',
+ "aoColumnDefs": [
+ { "aTargets": [ -1,-2 ], "bSortable": false, "bSearchable": false }
+ ],
+ "aoColumns": [
+ { "sType": "title-string" },{ "sType": "anti-the" },null,{ "sType": "title-string" },null,null,null,null,null,null
+ ],
+ "bPaginate": false
+ }));
+ $("#relissuest").dataTable($.extend(true, {}, dataTablesDefaults, {
+ "sDom": 't',
+ "aoColumns": [
+ { "sType": "title-string" },{ "sType": "anti-the" },null,{ "sType": "title-string" },null,null,null,null,null
+ ],
+ "bPaginate": false
+ }));
+ $("#holdst").dataTable($.extend(true, {}, dataTablesDefaults, {
+ "sDom": 't',
+ "aoColumnDefs": [
+ { "aTargets": [ -1,-2 ], "bSortable": false, "bSearchable": false }
+ ],
+ "aoColumns": [
+ { "sType": "title-string" },{ "sType": "anti-the" },null,null,null,null,null,null
+ ],
+ "bPaginate": false
+ }));
[% IF ( picture ) %]
// new YAHOO.widget.Button("delpicture"); // FIXME: formatting mismatch between YUI and normal button
$('#delpicture').click(function(){
- return confirm(_('Are you sure you want to delete this patron image? This cannot be undone.'));
+ return confirm(_("Are you sure you want to delete this patron image? This cannot be undone."));
});
$('#manage-patron-image').find("input[value*=Upload]").click(function(){
if($("#uploadfile").val() == ""){
alert(_("Please choose a file to upload"));
return false;
}
- return confirm(_('Are you sure you want to replace the current patron image? This cannot be undone.'));
+ return confirm(_("Are you sure you want to replace the current patron image? This cannot be undone."));
});[% END %]
$("#renew_all" ).click(function(){ $(".checkboxed").checkCheckboxes(":input[name*=items]" ); $(".checkboxed").unCheckCheckboxes(":input[name*=barcodes]"); });
$("#CheckAllitems" ).click(function(){ $(".checkboxed").checkCheckboxes(":input[name*=items]" ); $(".checkboxed").unCheckCheckboxes(":input[name*=barcodes]"); return false; });
var Node=me.parentNode.previousSibling;
while (Node.nodeName!="TD"){Node=Node.previousSibling}
var Nodes=Node.childNodes;
- for (var i=0;i<Nodes.length;i++){
+ for (var i=0;i < Nodes.length;i++){
if (Nodes[i].nodeName=="INPUT" && Nodes[i].getAttribute("type")=="checkbox"){
Nodes[i].checked=false;
}
[% IF ( unknowuser ) %]
<div class="dialog message">This patron does not exist.</div>
[% ELSE %]
- [% IF ( reregistration ) %]<div class="dialog message">Patron's account has been renewed until [% dateexpiry %]</div>[% END %]
+ [% IF ( was_renewed ) %]<div class="dialog message">Patron's account has been renewed until [% dateexpiry %]</div>[% END %]
[% IF ( flagged ) %]
- <ul>
+ <div id="circmessages" class="circmessage attention">
+ <ul>
[% IF ( userdebarred ) %]
- <li>Patron is restricted[% IF ( userdebarreddate ) %] until [% userdebarreddate%] [% IF (debarredcomment ) %]([% debarredcomment %])[% END %][% END %]
- <form class="inline compact" action="/cgi-bin/koha/members/setdebar.pl" method="post">
- <input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
- <input type="submit" value="Lift restriction" />
- </form>
+ <li class="blocker">Patron is restricted[% IF ( userdebarreddate ) %] until [% userdebarreddate%] [% IF (debarredcomment ) %]([% debarredcomment %])[% END %][% END %]
+ <a href="#reldebarments" onclick="$('#debarments-tab-link').click()">View restrictions</a>
</li>
[% END %]
- [% IF ( gonenoaddress ) %]<li>Patron's address is in doubt.</li>[% END %]
- [% IF ( lost ) %]<li>Patron's card has been reported lost.</li>[% END %]
- </ul>
+ [% IF ( gonenoaddress ) %]<li class="blocker">Patron's address is in doubt.</li>[% END %]
+ [% IF ( lost ) %]<li class="blocker">Patron's card has been reported lost.</li>[% END %]
+ </ul>
+ </div>
[% END %]
<h3>[% UNLESS ( I ) %]
[% UNLESS ( I ) %][% IF ( othernames ) %]“[% othernames %]”[% END %]
<p class="address">[% streetnumber %]
- [% IF ( roaddetails ) %]
- [% roaddetails %]
- [% END %]
+ [% IF roadtype %][% roadtype %][% END %]
[% address %]<br />
[% IF ( address2 ) %][% address2 %]<br />[% END %]
[% IF ( city ) %][% city %][% END %]
<li><span class="label">Registration date: </span>[% dateenrolled %]</li>
<li><span class="label">Expiration date: </span>
- [% IF ( reregistration ) %]
- <strong class="reregistrinfo">[% dateexpiry %]</span>
+ [% IF ( was_renewed ) %]
+ <strong class="reregistrinfo">[% dateexpiry %]</strong>
[% ELSE %]
[% dateexpiry %]
[% END %]
<a href="#onhold">[% countreserv %] Hold(s)</a> [% ELSE %]
<a href="#onhold">0 Holds</a>
[% END %]</li>
+ <li><a id="debarments-tab-link" href="#reldebarments">[% debarments.size %] Restrictions</a></li>
</ul>
<form action="/cgi-bin/koha/reserve/renewscript.pl" method="post" class="checkboxed">
[% ELSE %]
<td>
[% END %]
- [% issueloo.date_due %]
+ <span title="[% issueloo.date_due %]">[% issueloo.date_due | $KohaDates %]</span>
[% IF ( issueloo.itemlost ) %]
<span class="lost">[% issueloo.itemlost %]</span>
[% END %]
<span class="dmg">[% issueloo.itemdamaged %]</span>
[% END %]
</td>
- <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% issueloo.biblionumber %]"><strong>[% issueloo.title |html %]</strong></a>[% IF ( issueloo.author ) %], by [% issueloo.author %][% END %] [% IF ( issueloo.publishercode ) %]; [% issueloo.publishercode %] [% END %] [% IF ( issueloo.publicationyear ) %], [% issueloo.publicationyear %][% END %] <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% issueloo.biblionumber %]&itemnumber=[% issueloo.itemnumber %]#item[% issueloo.itemnumber %]">[% issueloo.barcode %]</a></td>
+ <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% issueloo.biblionumber %]"><strong>[% issueloo.title |html %][% FOREACH subtitl IN issueloo.subtitle %] [% subtitl.subfield %][% END %]</strong></a>[% IF ( issueloo.author ) %], by [% issueloo.author %][% END %] [% IF ( issueloo.publishercode ) %]; [% issueloo.publishercode %] [% END %] [% IF ( issueloo.publicationyear ) %], [% issueloo.publicationyear %][% END %] <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% issueloo.biblionumber %]&itemnumber=[% issueloo.itemnumber %]#item[% issueloo.itemnumber %]">[% issueloo.barcode %]</a></td>
<td>[% UNLESS ( noItemTypeImages ) %] [% IF ( issueloo.itemtype_image ) %]<img src="[% issueloo.itemtype_image %]" alt="" />[% END %][% END %][% issueloo.itemtype_description %]</td>
- <td>[% issueloo.issuedate %]</td>
+ <td><span title="[% issueloo.issuedate %]">[% issueloo.issuedate | $KohaDates%]</span></td>
<td>[% issueloo.issuingbranchname %]</td>
<td>[% issueloo.itemcallnumber %]</td>
<td>[% issueloo.charge %]</td>
<input type="checkbox" name="items[]" value="[% issueloo.itemnumber %]" />
[% END %]
</span>
+ [% IF issueloo.renewsallowed && issueloo.renewsleft && !issueloo.norenew_reason_too_soon %]
+ <span class="renewals">([% issueloo.renewsleft %] of [% issueloo.renewsallowed %] renewals remaining)</span>
+ [% END %]
<span class="renewals-disabled">
[% END %]
[% IF ( issueloo.norenew_reason_on_reserve ) %]
- <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% issueloo.biblionumber %]">On Hold</a>
+ <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% issueloo.biblionumber %]">On Hold</a>
+ [% ELSIF ( issueloo.norenew_reason_too_many ) %]
+ Not renewable
+ [% ELSIF ( issueloo.norenew_reason_too_soon ) %]
+ No renewal before [% issueloo.soonestrenewdate %]
+ <span class="renewals">([% issueloo.renewsleft %] of [% issueloo.renewsallowed %] renewals remaining)</span>
[% END %]
- [% IF ( issueloo.norenew_reason_too_many ) %]
- Not renewable
- [% END %]
[% IF ( issueloo.can_confirm ) %]
</span>
[% END %]
[% ELSE %]
<input type="checkbox" name="items[]" value="[% issueloo.itemnumber %]" onclick="uncheck_sibling(this);" />
[% END %]
+ [% IF issueloo.renewsallowed && issueloo.renewsleft %]
+ <span class="renewals">([% issueloo.renewsleft %] of [% issueloo.renewsallowed %] renewals remaining)</span>
+ [% END %]
[% END %]
</td>
[% END %]
[% ELSE %]
<td>
[% END %]
- [% relissueloo.date_due %]
+ <span title="[% relissueloo.date_due %]">[% relissueloo.date_due | $KohaDates %]</span>
[% IF ( relissueloo.itemlost ) %]
<span class="lost">[% relissueloo.itemlost %]</span>
[% END %]
<span class="dmg">[% relissueloo.itemdamaged %]</span>
[% END %]
</td>
- <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% relissueloo.biblionumber %]"><strong>[% relissueloo.title |html %]</strong></a>[% IF relissueloo.author %], by [% relissueloo.author %][% END %] [% IF relissueloo.publishercode %]; [% relissueloo.publishercode %] [% END %] [% IF relissueloo.publicationyear %], [% relissueloo.publicationyear %][% END %] <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% relissueloo.biblionumber %]&itemnumber=[% relissueloo.itemnumber %]#item[% relissueloo.itemnumber %]">[% relissueloo.barcode %]</a></td>
+ <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% relissueloo.biblionumber %]"><strong>[% relissueloo.title |html %][% FOREACH subtitl IN relissueloo.subtitle %] [% subtitl.subfield %][% END %]</strong></a>[% IF relissueloo.author %], by [% relissueloo.author %][% END %] [% IF relissueloo.publishercode %]; [% relissueloo.publishercode %] [% END %] [% IF relissueloo.publicationyear %], [% relissueloo.publicationyear %][% END %] <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% relissueloo.biblionumber %]&itemnumber=[% relissueloo.itemnumber %]#item[% relissueloo.itemnumber %]">[% relissueloo.barcode %]</a></td>
<td>[% UNLESS ( noItemTypeImages ) %] [% IF ( relissueloo.itemtype_image ) %]<img src="[% relissueloo.itemtype_image %]" alt="" />[% END %][% END %][% relissueloo.itemtype_description %]</td>
- <td>[% relissueloo.issuedate %]</td>
+ <td><span title="[% relissueloo.issuedate %]">[% relissueloo.issuedate | $KohaDates %]</span></td>
<td>[% relissueloo.issuingbranchname %]</td>
<td>[% relissueloo.itemcallnumber %]</td>
<td>[% relissueloo.charge %]</td>
[% END %]
</div>
+[% INCLUDE borrower_debarments.inc %]
+
<div id="onhold">
[% IF ( reservloop ) %]
<form action="/cgi-bin/koha/reserve/modrequest.pl" method="post">
<th>Title</th>
<th>Call number</th>
<th>Barcode</th>
+ <th>Expiration</th>
<th>Priority</th>
<th>Delete?</th>
<th> </th>
</tr></thead>
<tbody>[% FOREACH reservloo IN reservloop %]
<tr class="[% reservloo.color %]">
- <td>[% reservloo.reservedate %]</td>
+ <td><span title="[% reservloo.reservedate %]">[% reservloo.reservedate | $KohaDates %]</span></td>
<td>
- <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% reservloo.biblionumber %]">[% reservloo.title |html %]</a>[% IF ( reservloo.author ) %], by [% reservloo.author %][% END %]
+ <a href="/cgi-bin/koha/reserve/request.pl?biblionumber=[% reservloo.biblionumber %]">[% reservloo.title |html %][% FOREACH subtitl IN reservloo.subtitle %] [% subtitl.subfield %][% END %]</a>[% IF ( reservloo.author ) %], by [% reservloo.author %][% END %]
</td>
<td>[% reservloo.itemcallnumber %]</td>
<td>[% IF ( reservloo.waiting ) %]
<a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=[% reservloo.biblionumber %]">[% reservloo.barcodereserv %]</a>
[% END %]
</td>
+ <td>[% reservloo.expirationdate | $KohaDates %]</td>
<td>[% IF ( reservloo.waitingposition ) %]<strong>[% reservloo.waitingposition %]</strong>[% END %]</td>
<td><select name="rank-request">
<option value="n">No</option>
</select>
<input type="hidden" name="biblionumber" value="[% reservloo.biblionumber %]" />
<input type="hidden" name="borrowernumber" value="[% borrowernumber %]" />
+ <input type="hidden" name="reserve_id" value="[% reservloo.reserve_id %]" />
</td>
<td>[% IF ( reservloo.suspend ) %]Suspended [% IF ( reservloo.suspend_until ) %] until [% reservloo.suspend_until | $KohaDates %][% END %][% END %]</td>
</tr>