+[% USE raw %]
+[% USE Asset %]
[% USE KohaDates %]
+[%- USE Branches -%]
+[%- USE Price -%]
+[% SET footerjs = 1 %]
[% INCLUDE 'doc-head-open.inc' %]
-<title>Koha › Circulation › Items overdue as of [% todaysdate %]</title>
+<title>Koha › Circulation › Items overdue as of [% todaysdate | html %]</title>
[% INCLUDE 'doc-head-close.inc' %]
-[% INCLUDE 'calendar.inc' %]
-[%- USE Branches -%]
-<script type="text/javascript">
- //<![CDATA[
- function clone_parent(node) {
- var parent = node.parentNode;
- var clone = parent.cloneNode(true);
- parent.parentNode.insertBefore(clone, parent.nextSibling);
- $("a", clone).attr("style", "visibility: visible");
- $("input", clone).attr("value", "");
-
-
- var theid = $("span", clone).attr("id") || "";
- var theid = $("span", clone).attr("id") || "";
- var parts = theid.match(/^pattrodue-getready-(.*)$/);
- if (parts && parts.length > 1)
- {
- var appendid = "-" + Math.floor(Math.random()*1000+1);
- $("span", clone).attr("id",theid+appendid);
-
- theid = $("input", clone).attr("id");
- $("input", clone).attr("id",theid+appendid);
-
- theid = $("div[id]", clone).attr("id");
- $("div[id]", clone).attr("id",theid+appendid);
-
- var attrcode = $("script", clone).attr("x-code");
- var newsuffix = parts[1] + appendid;
- create_auto_completion_responder(newsuffix,attrcode);
- }
-
- }
-
-
- function delete_parent(node) {
- var parent = node.parentNode;
- parent.parentNode.removeChild(parent);
- }
-
- function create_auto_completion_responder(uniqueid,attrcode) {
- $("#pattrodue-getready-" + uniqueid).ready(function(){
- $( "#pattrodue-input-" + uniqueid ).autocomplete({
- source: "/cgi-bin/koha/circ/ypattrodue-attr-search-authvalue.pl/"+attrcode,
- select: function( event, ui ) {
- $( "#pattrodue-input-"+uniqueid ).val( ui.item.description );
- return false;
- }
- })
- .data( "ui-autocomplete" )._renderItem = function( ul, item ) {
- return $( "<li></li>" )
- .data( "ui-autocomplete-item", item )
- .append( "<a>" + item.description + " (" + item.authorised_value + ")</a>" )
- .appendTo( ul )
- .css("font-size","90%").css("width","13em");
- };
- });
- }
-//]]>
-</script>
-<style type="text/css">
+<style>
.sql {display:none;}
</style>
</head>
+
<body id="circ_overdue" class="circ">
[% INCLUDE 'header.inc' %]
[% INCLUDE 'circ-search.inc' %]
-<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/circ/circulation-home.pl">Circulation</a> › Overdues as of [% todaysdate %]</div>
-
-<div id="doc3" class="yui-t2">
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> › <a href="/cgi-bin/koha/circ/circulation-home.pl">Circulation</a> › Overdues as of [% todaysdate | html %]</div>
- <div id="bd">
- <div id="yui-main">
- <div class="yui-b">
+<div class="main container-fluid">
+ <div class="row">
+ <div class="col-sm-10 col-sm-push-2">
+ <main>
[% IF ( noreport ) %]
<h2>Overdue report</h2>
[% IF ( overdueloop ) %]
- <h2>[% nnoverdue %] [% IF ( noverdue_is_plural ) %]Items[% ELSE %]Item[% END %] overdue as of [% todaysdate %][% IF ( isfiltered ) %] <span style="font-size:70%;">(Filtered. <a href="/cgi-bin/koha/circ/overdue.pl">Reset filter</a>)</span>[% END %]</h2>
+ <h2>[% nnoverdue | html %] [% IF ( noverdue_is_plural ) %]Items[% ELSE %]Item[% END %] overdue as of [% todaysdate | html %][% IF ( isfiltered ) %] <span style="font-size:70%;">(Filtered. <a href="/cgi-bin/koha/circ/overdue.pl">Reset filter</a>)</span>[% END %]</h2>
<p>
[% IF ( isfiltered ) %]
- <a href="overdue.pl?op=csv&[% csv_param_string |html %]">Download file of displayed overdues</a>
+ <a href="overdue.pl?op=csv&[% csv_param_string | uri %]">Download file of displayed overdues</a>
[% ELSE %]
<a href="overdue.pl?op=csv">Download file of all overdues</a>
[% END %]
</p>
- <div class="sql"><pre>[% sql |html %]</pre></div>
+ <div class="sql"><pre>[% sql | html %]</pre></div>
<div class="searchresults">
<table id="overduest">
<thead>
<tr>
- <th>Due date</th>
+ <th class="title-string">Due date</th>
<th>Patron</th>
<th>Library</th>
<th>Title</th>
<th>Barcode</th>
<th>Call number</th>
<th>Price</th>
+ <th>Non-public note</th>
</tr>
</thead>
[%- BLOCK subject -%]Overdue:[%- END -%]
<tbody>
[% FOREACH overdueloo IN overdueloop %]
<tr>
- <td>[% overdueloo.duedate %]</td>
- <td><a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=[% overdueloo.borrowernumber %]">[% overdueloo.surname %][% IF (overdueloo.firstname) %], [% overdueloo.firstname %][% END %] ([% overdueloo.cardnumber %])</a>
- [% IF ( overdueloo.email ) %][<a href="mailto:[% overdueloo.email %]?subject=[% INCLUDE subject %] [% overdueloo.title |html %]">email</a>][% END %]
- [% IF ( overdueloo.phone ) %]([% overdueloo.phone %])[% ELSIF ( overdueloo.mobile ) %]([% overdueloo.mobile %])[% ELSIF ( overdueloo.phonepro ) %]([% overdueloo.phonepro %])[% END %]</td>
- <td>[% IF overdueloo.branchcode %][% Branches.GetName( overdueloo.branchcode ) %][% END %]</td>
- <td>[% INCLUDE 'biblio-default-view.inc' biblionumber = overdueloo.biblionumber %][% overdueloo.title |html %] [% overdueloo.subtitle %]</a> [% IF ( overdueloo.author ) %], by [% overdueloo.author %][% END %][% IF ( overdueloo.enumchron ) %], [% overdueloo.enumchron %][% END %]</td>
- <td><a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% overdueloo.biblionumber %]&itemnumber=[% overdueloo.itemnum %]#item[% overdueloo.itemnum %]">[% overdueloo.barcode %]</a></td>
- <td>[% overdueloo.itemcallnumber %]</td>
- <td>[% overdueloo.replacementprice %]</td>
+ <td><span title="[% overdueloo.duedate | html %]">[% overdueloo.duedate | $KohaDates %]</span></td>
+ <td>
+ [% INCLUDE 'patron-title.inc' patron=overdueloo.patron hide_patron_infos_if_needed=1 link_to="circulation_reserves" %]
+ [% IF logged_in_user.can_see_patron_infos( overdueloo.patron ) %]
+ [% IF ( overdueloo.email ) %][<a href="mailto:[% overdueloo.email | uri %]?subject=[% INCLUDE subject %] [% overdueloo.title | uri %]">email</a>][% END %]
+ [% IF ( overdueloo.phone ) %]([% overdueloo.phone | html %])[% ELSIF ( overdueloo.mobile ) %]([% overdueloo.mobile | html %])[% ELSIF ( overdueloo.phonepro ) %]([% overdueloo.phonepro | html %])[% END %]</td>
+ [% END %]
+ <td>[% Branches.GetName( overdueloo.patron.branchcode ) | html %]</td>
+ <td>[% INCLUDE 'biblio-default-view.inc' biblionumber = overdueloo.biblionumber %][% overdueloo.title | html %] [% overdueloo.subtitle | html %]</a> [% IF ( overdueloo.author ) %], by [% overdueloo.author | html %][% END %][% IF ( overdueloo.enumchron ) %], [% overdueloo.enumchron | html %][% END %]</td>
+ <td><a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=[% overdueloo.biblionumber | uri %]&itemnumber=[% overdueloo.itemnum | uri %]#item[% overdueloo.itemnum | uri %]">[% overdueloo.barcode | html %]</a></td>
+ <td>[% overdueloo.itemcallnumber | html %]</td>
+ <td>[% overdueloo.replacementprice | $Price %]</td>
+ <td>[% overdueloo.itemnotes_nonpublic | html %]</td>
</tr>
[% END %]
</tbody>
[% END %] <!-- overdueloop -->
[% END %] <!-- noreport -->
-</div>
-</div>
-<div class="yui-b">
+ </main>
+ </div> <!-- /.col-sm-10.col-sm-push-2 -->
+
+ <div class="col-sm-2 col-sm-pull-10">
+ <aside>
+
<form method="post" action="/cgi-bin/koha/circ/overdue.pl">
<fieldset class="brief">
<h4>Filter on:</h4>
</li>
</ol></fieldset>
<ol>
- <li><label>Name or cardnumber:</label><input type="text" name="borname" value="[% borname |html %]" /></li>
+ <li><label>Name or cardnumber:</label><input type="text" name="borname" value="[% borname | html %]" /></li>
<li><label>Patron category:</label><select name="borcat" id="borcat"><option value="">Any</option>
[% FOREACH borcatloo IN borcatloop %]
- [% IF ( borcatloo.selected ) %]<option value="[% borcatloo.value |html %]" selected="selected">[% borcatloo.catname %]</option>[% ELSE %]<option value="[% borcatloo.value |html %]">[% borcatloo.catname %]</option>[% END %]
+ [% IF ( borcatloo.selected ) %]<option value="[% borcatloo.value | html %]" selected="selected">[% borcatloo.catname | html %]</option>[% ELSE %]<option value="[% borcatloo.value | html %]">[% borcatloo.catname | html %]</option>[% END %]
[% END %]
</select>
</li>
[% FOREACH patron_attr_filter_loo IN patron_attr_filter_loop %]
<!-- domid cgivalue ismany isclone ordinal code description repeatable authorised_value_category -->
<li>
- <label>[% patron_attr_filter_loo.description %]:</label>
+ <label>[% patron_attr_filter_loo.description | html %]:</label>
[% IF ( patron_attr_filter_loo.authorised_value_category ) %]
- <script type="text/javascript" x-code="[% patron_attr_filter_loo.code |html %]">create_auto_completion_responder([% patron_attr_filter_loo.domid %],"[% patron_attr_filter_loo.code |html %]");</script>
- <span id="pattrodue-getready-[% patron_attr_filter_loo.domid %]">
+ <script type="text/javascript" x-code="[% patron_attr_filter_loo.code | html %]">create_auto_completion_responder([% patron_attr_filter_loo.domid | html %],"[% patron_attr_filter_loo.code | html %]");</script>
+ <span id="pattrodue-getready-[% patron_attr_filter_loo.domid | html %]">
<div class="pattrodue-autocomplete">
- <input autocomplete="off" id="pattrodue-input-[% patron_attr_filter_loo.domid %]" name="patron_attr_filter_[% patron_attr_filter_loo.code |html %]" value="[% patron_attr_filter_loo.cgivalue |html %]" class="pattrodue-input" type="text" />
+ <input autocomplete="off" id="pattrodue-input-[% patron_attr_filter_loo.domid | html %]" name="patron_attr_filter_[% patron_attr_filter_loo.code | html %]" value="[% patron_attr_filter_loo.cgivalue | html %]" class="pattrodue-input" type="text" />
</div>
</span>
[% ELSE %]
- <input type="text" name="patron_attr_filter_[% patron_attr_filter_loo.code |html %]" value="[% patron_attr_filter_loo.cgivalue |html %]"/>
+ <input type="text" name="patron_attr_filter_[% patron_attr_filter_loo.code | html %]" value="[% patron_attr_filter_loo.cgivalue | html %]"/>
[% END %]
[% IF ( patron_attr_filter_loo.repeatable ) %]
<a href="#" onclick="clone_parent(this); return false;">Add</a>
<li><label>Item type:</label><select name="itemtype" id="itemtype"><option value="">Any</option>
[% FOREACH itemtypeloo IN itemtypeloop %][% IF ( itemtypeloo.selected ) %]
- <option value="[% itemtypeloo.value |html %]" selected="selected">[% itemtypeloo.itemtypename %]</option>[% ELSE %]
- <option value="[% itemtypeloo.value |html %]">[% itemtypeloo.itemtypename %]</option>[% END %]
+ <option value="[% itemtypeloo.value | html %]" selected="selected">[% itemtypeloo.itemtypename | html %]</option>[% ELSE %]
+ <option value="[% itemtypeloo.value | html %]">[% itemtypeloo.itemtypename | html %]</option>[% END %]
[% END %]
</select>
</li>
<label>Item home library:</label>
<select name="homebranch" id="homebranch">
<option value="">Any</option>
- [% FOREACH homebranchloo IN homebranchloop %][% IF ( homebranchloo.selected ) %]
- <option value="[% homebranchloo.value |html %]" selected="selected">[% homebranchloo.branchname %]</option>[% ELSE %]
- <option value="[% homebranchloo.value |html %]">[% homebranchloo.branchname %]</option>[% END %]
- [% END %]
+ [% PROCESS options_for_libraries libraries => Branches.all( selected => homebranchfilter ) %]
</select>
</li>
<li>
<label>Item holding library:</label>
- <select name="holdingbranch" id="holdingbranch">
+ <select name="holdingbranch" id="holdingbranch">
<option value="">Any</option>
- [% FOREACH holdingbranchloo IN holdingbranchloop %][% IF ( holdingbranchloo.selected ) %]
- <option value="[% holdingbranchloo.value |html %]" selected="selected">[% holdingbranchloo.branchname %]</option>[% ELSE %]
- <option value="[% holdingbranchloo.value |html %]">[% holdingbranchloo.branchname %]</option>[% END %]
- [% END %]
+ [% PROCESS options_for_libraries libraries => Branches.all( selected => holdingbranchfilter ) %]
</select>
</li>
<li>
- <label>Library of the patron:</label><select name="branch" id="branch">
- <option value="">Any</option>
- [% FOREACH branchloo IN branchloop %]
- [% IF ( branchloo.selected ) %]
- <option value="[% branchloo.value |html %]" selected="selected">[% branchloo.branchname %]</option>[% ELSE %]
- <option value="[% branchloo.value |html %]">[% branchloo.branchname %]</option>[% END %]
- [% END %]
- </select>
+ <label>Library of the patron:</label>
+ <select name="branch" id="branch">
+ <option value="">Any</option>
+ [% PROCESS options_for_libraries libraries => Branches.all( selected => branchfilter, only_from_group => 1 ) %]
+ </select>
</li>
- <li><label for="order">Sort by:</label> <select name="order" id="order">
-[% FOREACH ORDER_LOO IN ORDER_LOOP %]
- [% IF ( ORDER_LOO.selected ) %]
- <option value="[% ORDER_LOO.ordervalue %]" selected="selected">
- [% ELSE %]
- <option value="[% ORDER_LOO.ordervalue %]">
- [% END %]
- [% IF ( ORDER_LOO.order_date_due ) %]Due date
- [% ELSIF ( ORDER_LOO.order_borrower ) %]Patron
- [% ELSIF ( ORDER_LOO.order_barcode ) %]Barcode
- [% ELSIF ( ORDER_LOO.order_title ) %]Title
- [% ELSIF ( ORDER_LOO.order_date_due_desc ) %]Due date desc
- [% ELSIF ( ORDER_LOO.order_borrower_desc ) %]Patron desc
- [% ELSIF ( ORDER_LOO.order_barcode_desc ) %]Barcode desc
- [% ELSIF ( ORDER_LOO.order_title_desc ) %]Title desc
- [% ELSE %][% ORDER_LOO.label %]
- [% IF ( ORDER_LOO.desc ) %]desc[% END %]
- [% END %]
- </option>
-[% END %]
- [% FOREACH patron_attr_order_loo IN patron_attr_order_loop %]
- [% IF ( patron_attr_order_loo.selected ) %]<option value="[% patron_attr_order_loo.value |html %]" selected="selected">[% patron_attr_order_loo.label %]</option>
- [% ELSE %]<option value="[% patron_attr_order_loo.value |html %]">[% patron_attr_order_loo.label %]</option>[% END %]
- [% END %]
-</select></li>
-
<li class="radio"><label for="showall">Show any items currently checked out:</label>
[% IF ( showall ) %]
<input type="checkbox" id="showall" name="showall" value="show" checked="checked" />
</fieldset>
</fieldset>
</form>
-</div>
-</div>
+
+ </aside>
+ </div> <!-- /.col-sm-2.col-sm-pull-10 -->
+ </div> <!-- /.row -->
+
+[% MACRO jsinclude BLOCK %]
+ [% INCLUDE 'calendar.inc' %]
+ [% INCLUDE 'datatables.inc' %]
+ <script type="text/javascript">
+ function clone_parent(node) {
+ var parent = node.parentNode;
+ var clone = parent.cloneNode(true);
+ parent.parentNode.insertBefore(clone, parent.nextSibling);
+ $("a", clone).attr("style", "visibility: visible");
+ $("input", clone).attr("value", "");
+
+ var theid = $("span", clone).attr("id") || "";
+ var theid = $("span", clone).attr("id") || "";
+ var parts = theid.match(/^pattrodue-getready-(.*)$/);
+ if (parts && parts.length > 1){
+ var appendid = "-" + Math.floor(Math.random()*1000+1);
+ $("span", clone).attr("id",theid+appendid);
+
+ theid = $("input", clone).attr("id");
+ $("input", clone).attr("id",theid+appendid);
+
+ theid = $("div[id]", clone).attr("id");
+ $("div[id]", clone).attr("id",theid+appendid);
+
+ var attrcode = $("script", clone).attr("x-code");
+ var newsuffix = parts[1] + appendid;
+ create_auto_completion_responder(newsuffix,attrcode);
+ }
+ }
+
+
+ function delete_parent(node) {
+ var parent = node.parentNode;
+ parent.parentNode.removeChild(parent);
+ }
+
+ function create_auto_completion_responder(uniqueid,attrcode) {
+ $("#pattrodue-getready-" + uniqueid).ready(function(){
+ $( "#pattrodue-input-" + uniqueid ).autocomplete({
+ source: "/cgi-bin/koha/circ/ypattrodue-attr-search-authvalue.pl/"+attrcode,
+ select: function( event, ui ) {
+ $( "#pattrodue-input-"+uniqueid ).val( ui.item.description );
+ return false;
+ }
+ })
+ .data( "ui-autocomplete" )._renderItem = function( ul, item ) {
+ return $( "<li></li>" )
+ .data( "ui-autocomplete-item", item )
+ .append( "<a>" + item.description + " (" + item.authorised_value + ")</a>" )
+ .appendTo( ul )
+ .css("font-size","90%").css("width","13em");
+ };
+ });
+ }
+
+ $(document).ready(function(){
+ $("#overduest").dataTable($.extend(true, {}, dataTablesDefaults, {
+ "sPaginationType": "four_button",
+ "aaSorting": [[0, 'asc']],
+ "aoColumnDefs": [
+ { "sType": "title-string", "aTargets": [ "title-string" ] }
+ ]
+ }));
+ });
+ </script>
+[% END %]
[% INCLUDE 'intranet-bottom.inc' %]