[Koha-patches] [PATCH] Changes to make checkouts/holds display the same on circulation and patron detail screens (Bug 3106)
Owen Leonard
oleonard at myacpl.org
Fri Aug 28 15:12:28 CEST 2009
---
circ/circulation.pl | 12 +-
.../prog/en/modules/circ/circulation.tmpl | 225 +++++++++++++++-----
.../prog/en/modules/members/moremember.tmpl | 46 ++--
members/moremember.pl | 9 +-
reserve/modrequest.pl | 2 +
5 files changed, 215 insertions(+), 79 deletions(-)
diff --git a/circ/circulation.pl b/circ/circulation.pl
index 6d79124..de6013a 100755
--- a/circ/circulation.pl
+++ b/circ/circulation.pl
@@ -425,13 +425,14 @@ my @previousissues;
## ADDED BY JF: new itemtype issuingrules counter stuff
my $issued_itemtypes_count;
my @issued_itemtypes_count_loop;
+my $totalprice = 0;
if ($borrower) {
# get each issue of the borrower & separate them in todayissues & previous issues
my ($issueslist) = GetPendingIssues($borrower->{'borrowernumber'});
-
# split in 2 arrays for today & previous
foreach my $it ( @$issueslist ) {
+ my $itemtypeinfo = getitemtypeinfo( (C4::Context->preference('item-level_itypes')) ? $it->{'itype'} : $it->{'itemtype'} );
# set itemtype per item-level_itype syspref - FIXME this is an ugly hack
$it->{'itemtype'} = ( C4::Context->preference( 'item-level_itypes' ) ) ? $it->{'itype'} : $it->{'itemtype'};
@@ -447,8 +448,13 @@ if ($borrower) {
$it->{'can_renew'} = $can_renew;
$it->{'can_confirm'} = !$can_renew && !$restype;
$it->{'renew_error'} = $restype;
+ $it->{'checkoutdate'} = C4::Dates->new($it->{'issuedate'},'iso')->output('syspref');
+ $totalprice += $it->{'replacementprice'};
+ $it->{'itemtype'} = $itemtypeinfo->{'description'};
+ $it->{'itemtype_image'} = $itemtypeinfo->{'imageurl'};
$it->{'dd'} = format_date($it->{'date_due'});
+ $it->{'issuedate'} = format_date($it->{'issuedate'});
$it->{'od'} = ( $it->{'date_due'} lt $todaysdate ) ? 1 : 0 ;
($it->{'author'} eq '') and $it->{'author'} = ' ';
$it->{'renew_failed'} = $renew_failed{$it->{'itemnumber'}};
@@ -619,6 +625,8 @@ foreach my $flag ( sort keys %$flags ) {
my $amountold = $borrower->{flags}->{'CHARGES'}->{'message'} || 0;
$amountold =~ s/^.*\$//; # remove upto the $, if any
+my ( $total, $accts, $numaccts) = GetMemberAccountRecords( $borrowernumber );
+
if ( $borrower->{'category_type'} eq 'C') {
my ( $catcodes, $labels ) = GetborCatFromCatType( 'A', 'WHERE category_type = ?' );
my $cnt = scalar(@$catcodes);
@@ -676,6 +684,8 @@ $template->param(
duedatespec => $duedatespec,
message => $message,
CGIselectborrower => $CGIselectborrower,
+ totalprice => sprintf("%.2f", $totalprice),
+ totaldue => sprintf("%.2f", $total),
todayissues => \@todaysissues,
previssues => \@previousissues,
inprocess => $inprocess,
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tmpl
index 013a303..c43201a 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation.tmpl
@@ -21,7 +21,7 @@ $.tablesorter.addParser({
$.tablesorter.defaults.widgets = ['zebra'];
$("#issuest").tablesorter({<!-- TMPL_IF EXPR="dateformat eq 'metric'" -->
dateFormat: 'uk',<!-- /TMPL_IF -->
- headers: { 1: { sorter: 'articles' },5: { sorter: false },6:{sorter:false}}
+ headers: { 1: { sorter: 'articles' },5: { sorter: false },6:{sorter:false},7:{sorter:false},8:{sorter:false}}
});
$("#issuest").bind("sortEnd",function() {
$("#previous").parents("tr").remove(); // 'previous checkouts' header chokes table sorter
@@ -41,14 +41,91 @@ $.tablesorter.addParser({
}
} ).attr( 'checked', false );
<!-- /TMPL_IF -->
- $("td").click(function(e){
- if(e.target.tagName.toLowerCase() == 'td'){
- $(this).find("input:checkbox").each( function() {
- $(this).attr('checked', !$(this).attr('checked'));
- });
- }
- });
+
+var allcheckboxes = $(".checkboxed");
+ $("#renew_all").click(function(){
+ $(allcheckboxes).checkCheckboxes(":input[name*=items]");
+ $(allcheckboxes).unCheckCheckboxes(":input[name*=barcodes]");
+ });
+ $("#return_all").click(function(){
+ $(allcheckboxes).checkCheckboxes(":input[name*=barcodes]");
+ $(allcheckboxes).unCheckCheckboxes(":input[name*=items]");
+ });
+ $("#CheckAllitems").click(function(){
+ $(allcheckboxes).checkCheckboxes(":input[name*=items]");
+ $(allcheckboxes).unCheckCheckboxes(":input[name*=barcodes]"); return false;
+ });
+ $("#CheckNoitems").click(function(){
+ $(allcheckboxes).unCheckCheckboxes(":input[name*=items]"); return false;
+ });
+ $("#CheckAllreturns").click(function(){
+ $(allcheckboxes).checkCheckboxes(":input[name*=barcodes]");
+ $(allcheckboxes).unCheckCheckboxes(":input[name*=items]"); return false;
+ });
+ $("#CheckNoreturns" ).click(function(){
+ $(allcheckboxes).unCheckCheckboxes(":input[name*=barcodes]"); return false;
+ });
+
+ <!-- TMPL_IF NAME="CAN_user_circulate_override_renewals" -->
+ <!-- TMPL_IF NAME="AllowRenewalLimitOverride" -->
+ $( '#override_limit' ).click( function () {
+ if ( this.checked ) {
+ $( '.renewals-allowed' ).show(); $( '.renewals-disabled' ).hide();
+ } else {
+ $( '.renewals-allowed' ).hide(); $( '.renewals-disabled' ).show();
+ }
+ } ).attr( 'checked', false );
+ <!-- /TMPL_IF -->
+ <!-- /TMPL_IF -->
+ $("td").click(function(e){
+ if(e.target.tagName.toLowerCase() == 'td'){
+ $(this).find("input:checkbox").each( function() {
+ $(this).attr('checked', !$(this).attr('checked'));
+ if($(this).attr('checked')){
+ $(this).parent().siblings().find("input:checkbox").each(function(){
+ if($(this).attr('checked')){ $(this).attr('checked',''); }
+ });
+ }
+ });
+ }
+ });
+
});
+function uncheck_sibling(me){
+nodename=me.getAttribute("name");
+if (nodename =="barcodes[]"){
+ var Node=me.parentNode.previousSibling;
+ while (Node.nodeName!="TD"){Node=Node.previousSibling}
+ var Nodes=Node.childNodes;
+ for (var i=0;i<Nodes.length;i++){
+ if (Nodes[i].nodeName=="INPUT" && Nodes[i].getAttribute("type")=="checkbox"){
+ Nodes[i].checked=false;
+ }
+ }
+
+}else {
+ var Node=me.parentNode.nextSibling;
+ while (Node.nodeName!="TD"){Node=Node.nextSibling}
+ var Nodes=Node.childNodes;
+ for (var i=0;i<Nodes.length;i++){
+ if (Nodes[i].nodeName=="INPUT" && Nodes[i].getAttribute("type")=="checkbox"){
+ Nodes[i].checked=false;
+ }
+ }
+}
+}
+function validate1(date) {
+ var today = new Date();
+ if ( date < today ) {
+ return true;
+ } else {
+ return false;
+ }
+};
+function refocus(calendar) {
+ document.getElementById('barcode').focus();
+ calendar.hide();
+};
//]]>
</script>
<!-- TMPL_INCLUDE NAME="calendar.inc" -->
@@ -428,7 +505,7 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<a href="/cgi-bin/koha/circ/circulation.pl#checkouts">0 Checkouts</a>
<!-- /TMPL_IF --></li>
<li><!-- TMPL_IF NAME="countreserv"-->
- <a href="/cgi-bin/koha/circ/circulation.pl#reserves"><!--TMPL_VAR NAME="countreserv"--> Holds(s)</a>
+ <a href="/cgi-bin/koha/circ/circulation.pl#reserves"><!--TMPL_VAR NAME="countreserv"--> Hold(s)</a>
<!-- TMPL_ELSE -->
<a href="/cgi-bin/koha/circ/circulation.pl#reserves">0 Holds</a>
<!-- /TMPL_IF --></li>
@@ -438,23 +515,54 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<!-- SUMMARY : TODAY & PREVIOUS ISSUES -->
<div id="checkouts">
<!--TMPL_IF NAME="issuecount"-->
- <form action="/cgi-bin/koha/reserve/renewscript.pl" method="post">
+ <form action="/cgi-bin/koha/reserve/renewscript.pl" method="post" class="checkboxed">
<input type="hidden" value="circ" name="destination" />
<input type="hidden" name="cardnumber" value="<!-- TMPL_VAR NAME="cardnumber" -->" />
<input type="hidden" name="borrowernumber" value="<!-- TMPL_VAR NAME="borrowernumber" -->" />
<input type="hidden" name="branch" value="<!-- TMPL_VAR NAME="branch" -->" />
<table id="issuest">
<thead><tr>
- <th>Due date</th>
- <th>Title</th>
- <th>Item Type</th>
- <th>Call no</th>
- <th>Barcode</th>
- <th>Renewals</th>
- <th>Renew?</th>
- <th>Check In?</th>
+ <th scope="col">Due date</th>
+ <th scope="col">Title</th>
+ <th scope="col">Item Type</th>
+ <th scope="col">Checked out on</th>
+ <th scope="col">Call no</th>
+ <th scope="col">Charge</th>
+ <th scope="col">Price</th>
+ <th scope="col">Renew <p class="column-tool"><a href="#" id="CheckAllitems">select all</a> | <a href="#" id="CheckNoitems">none</a></p></th>
+ <th scope="col">Check in <p class="column-tool"><a href="#" id="CheckAllreturns">select all</a> | <a href="#" id="CheckNoreturns">none</a></p></th>
</tr>
<!-- TMPL_IF NAME="todayissues" --></thead>
+<tfoot>
+ <tr>
+ <td colspan="5" style="text-align: right; font-weight:bold;">Totals:</td>
+ <td><!-- TMPL_VAR NAME="totaldue" --></td>
+ <td><!-- TMPL_VAR NAME="totalprice" --></td>
+ <td colspan="2">
+ <p>
+ Renewal due date: <input type="text" size="8" id="newduedate" name="newduedate" value="<!-- TMPL_VAR Name="newduedate" -->" />
+ <img src="<!-- TMPL_VAR Name="themelang" -->/lib/calendar/cal.gif" id="newduedate_button" alt="Show Calendar" />
+ <script type="text/javascript"> //<![CDATA[
+ //#TODO - ADD syspref (AllowPostDatedCheckouts).
+ Calendar.setup(
+ {
+ inputField : "newduedate",
+ ifFormat : "<!-- TMPL_VAR NAME="DHTMLcalendar_dateformat" -->",
+ button : "newduedate_button",
+ disableFunc : validate1,
+ dateStatusFunc : validate1,
+ onClose : refocus
+ }
+ );
+ //]]>
+ </script>
+ </p>
+ <p>
+ <label>Forgive fines on return: <input type="checkbox" name="exemptfine" value="1" /></label>
+ </p>
+ </td>
+ </tr>
+ </tfoot>
<tbody>
<!-- TMPL_LOOP NAME="todayissues" -->
@@ -464,17 +572,13 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<tr class="highlight">
<!-- /TMPL_IF -->
<td><!-- TMPL_VAR NAME="dd" --></td>
- <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&type=intra"><!-- TMPL_VAR NAME="title" escape="html" --></a><!-- TMPL_IF NAME="author" -->, by <!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF --><!-- TMPL_IF NAME="itemnotes" -->- <span class="circ-hlt"><!-- TMPL_VAR name="itemnotes" --></span><!-- /TMPL_IF --></td>
- <td>
- <!-- TMPL_VAR NAME="itemtype" -->
- <!-- TMPL_UNLESS NAME="noItemTypeImages" --> <!-- TMPL_IF NAME="itemtype_image" -->
- <img src="<!-- TMPL_VAR NAME="itemtype_image" -->" />
- <!-- /TMPL_IF --><!-- /TMPL_UNLESS -->
- </td>
+ <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&type=intra"><strong><!-- TMPL_VAR NAME="title" escape="html" --></strong></a><!-- TMPL_IF NAME="author" -->, by <!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF --><!-- TMPL_IF NAME="itemnotes" -->- <span class="circ-hlt"><!-- TMPL_VAR name="itemnotes" --></span><!-- /TMPL_IF --> <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#item<!-- TMPL_VAR NAME="itemnumber" -->"><!-- TMPL_VAR NAME="barcode" --></a></td>
+ <td><!-- TMPL_UNLESS NAME="noItemTypeImages" --> <!-- TMPL_IF NAME="itemtype_image" --><img src="<!-- TMPL_VAR NAME="itemtype_image" -->" alt="" /><!-- /TMPL_IF --><!-- /TMPL_UNLESS --><!-- TMPL_VAR NAME="itemtype" --></td>
+ <td><!-- TMPL_VAR NAME="checkoutdate" --></td>
<td><!-- TMPL_VAR NAME="itemcallnumber" --></td>
- <td><a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#item<!-- TMPL_VAR NAME="itemnumber" -->"><!-- TMPL_VAR NAME="barcode" --></a></td>
- <td><!-- TMPL_VAR NAME="renewals" --></td>
- <td>
+ <td><!-- TMPL_VAR NAME="charge" --></td>
+ <td><!-- TMPL_VAR NAME="replacementprice" --></td>
+ <td><span style="padding: 0 1em;"><!-- TMPL_VAR NAME="renewals" --></span>
<!-- TMPL_IF NAME="can_renew" -->
<input type="checkbox" name="all_items[]" value="<!-- TMPL_VAR NAME="itemnumber" -->" checked="checked" style="display: none;" />
<!-- TMPL_IF NAME="od" -->
@@ -504,7 +608,13 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<!-- /TMPL_IF -->
<!-- /TMPL_IF -->
</td>
- <td><a href="/cgi-bin/koha/circ/returns.pl?barcode=<!-- TMPL_VAR NAME="barcode" -->">Check In</a></td>
+ <!-- TMPL_IF NAME="return_failed" -->
+ <td class="problem">Checkin Failed</td>
+ <!--TMPL_ELSE-->
+ <td><input type="checkbox" name="barcodes[]" value="<!-- TMPL_VAR NAME="barcode" -->" onclick="uncheck_sibling(this);" />
+ <input type="checkbox" name="all_barcodes[]" value="<!-- TMPL_VAR NAME="barcode" -->" checked="checked" style="display: none;" />
+ </td>
+ <!-- /TMPL_IF -->
<!-- TMPL_IF NAME="renew_failed" -->
<td>Renewal Failed</td>
<!-- /TMPL_IF -->
@@ -512,8 +622,8 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<!-- /TMPL_LOOP --> <!-- /loop todayissues -->
<!-- /if todayissues --><!-- /TMPL_IF -->
<!-- TMPL_IF NAME="previssues" -->
-<!-- TMPL_IF NAME="todayissues" --><tr><th colspan="8"><a name="previous" id="previous"></a>Previous checkouts</th></tr><!-- TMPL_ELSE -->
-<tr><th class="{sorter: false}" colspan="8"><a name="previous" id="previous"></a>Previous checkouts</th></tr></thead>
+<!-- TMPL_IF NAME="todayissues" --><tr><th colspan="10"><a name="previous" id="previous"></a>Previous checkouts</th></tr><!-- TMPL_ELSE -->
+<tr><th class="{sorter: false}" colspan="10"><a name="previous" id="previous"></a>Previous checkouts</th></tr></thead>
<tbody>
<!-- /TMPL_IF -->
<!-- TMPL_LOOP NAME="previssues" -->
@@ -525,17 +635,15 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<!-- TMPL_IF NAME="od" --><td class="od"><!-- TMPL_ELSE --><td><!-- /TMPL_IF -->
<!-- TMPL_VAR NAME="dd" -->
</td>
- <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&type=intra"><!-- TMPL_VAR NAME="title" escape="html" --></a><br /><!-- TMPL_IF NAME="author" --><!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF --> <!-- TMPL_IF NAME="itemnotes" -->- <!-- TMPL_VAR name="itemnotes" --><!-- /TMPL_IF --></td>
+ <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&type=intra"><strong><!-- TMPL_VAR NAME="title" escape="html" --></strong></a><!-- TMPL_IF NAME="author" -->, by <!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF --> <!-- TMPL_IF NAME="itemnotes" -->- <!-- TMPL_VAR name="itemnotes" --><!-- /TMPL_IF --> <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#item<!-- TMPL_VAR NAME="itemnumber" -->"><!-- TMPL_VAR NAME="barcode" --></a></td>
<td>
<!-- TMPL_VAR NAME="itemtype" -->
- <!-- TMPL_IF NAME="itemtype_image" -->
- <img src="<!-- TMPL_VAR NAME="itemtype_image" -->" />
- <!-- /TMPL_IF -->
</td>
+ <td><!-- TMPL_VAR NAME="issuedate" --></td>
<td><!-- TMPL_VAR NAME="itemcallnumber" --></td>
- <td><a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#item<!-- TMPL_VAR NAME="itemnumber" -->"><!-- TMPL_VAR NAME="barcode" --></a></td>
- <td><!-- TMPL_VAR NAME="renewals" --></td>
- <td>
+ <td><!-- TMPL_VAR NAME="charge" --></td>
+ <td><!-- TMPL_VAR NAME="replacementprice" --></td>
+ <td><span style="padding: 0 1em;"><!-- TMPL_IF NAME="renewals" --><!-- TMPL_VAR NAME="renewals" --><!-- TMPL_ELSE -->0<!-- /TMPL_IF --></span>
<!-- TMPL_IF NAME="can_renew" -->
<input type="checkbox" name="all_items[]" value="<!-- TMPL_VAR NAME="itemnumber" -->" checked="checked" style="display: none;" />
<!-- TMPL_IF NAME="od" -->
@@ -565,7 +673,13 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<!-- /TMPL_IF -->
<!-- /TMPL_IF -->
</td>
- <td><a href="/cgi-bin/koha/circ/returns.pl?barcode=<!-- TMPL_VAR NAME="barcode" -->">Check In</a></td>
+ <!-- TMPL_IF NAME="return_failed" -->
+ <td class="problem">Checkin Failed</td>
+ <!--TMPL_ELSE-->
+ <td><input type="checkbox" name="barcodes[]" value="<!-- TMPL_VAR NAME="barcode" -->" onclick="uncheck_sibling(this);" />
+ <input type="checkbox" name="all_barcodes[]" value="<!-- TMPL_VAR NAME="barcode" -->" checked="checked" style="display: none;" />
+ </td>
+ <!-- /TMPL_IF -->
<!-- TMPL_IF NAME="renew_failed" -->
<td>Renewal Failed</td>
<!-- /TMPL_IF -->
@@ -577,15 +691,16 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
</table>
<!--TMPL_IF NAME="issuecount"-->
<fieldset class="action">
- <!-- TMPL_IF NAME="CAN_user_circulate_override_renewals" -->
+ <!-- TMPL_IF NAME="CAN_user_circulate_override_renewals" -->
<!-- TMPL_IF NAME="AllowRenewalLimitOverride" -->
<label for="override_limit">Override Renewal Limit:</label>
<input type="checkbox" name="override_limit" id="override_limit" value="1" />
<!-- /TMPL_IF -->
- <!-- /TMPL_IF -->
- <input type="submit" name="renew_checked" value="Renew Checked Items" />
- <input type="submit" name="renew_all" value="Renew All" />
- </fieldset>
+ <!-- /TMPL_IF -->
+ <input type="submit" name="renew_checked" value="Renew or Return checked items" />
+ <input type="submit" id="renew_all" name="renew_all" value="Renew all" />
+ <input type="submit" id="return_all" name="return_all" value="Return all" />
+ </fieldset>
<!-- /TMPL_IF -->
</form>
<!-- TMPL_ELSE -->
@@ -596,21 +711,22 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<div id="reserves">
<!-- TMPL_IF NAME="reservloop" -->
+<form action="/cgi-bin/koha/reserve/modrequest.pl" method="post">
+ <input type="hidden" name="from" value="circ" />
<table id="holdst">
<thead><tr>
<th>Hold date</th>
<th>Title</th>
- <th>Item Type</th>
<th>Call Number</th>
<th>Barcode</th>
<th>Priority</th>
+ <th>Delete?</th>
</tr></thead>
<tbody>
<!-- TMPL_LOOP NAME="reservloop" -->
<tr class="<!-- TMPL_VAR NAME="color" -->">
<td><!-- TMPL_VAR NAME="reservedate" --></td>
- <td><a href="/cgi-bin/koha/reserve/request.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><!-- TMPL_VAR NAME="title" escape="html" --></a><!-- TMPL_IF NAME="author" -->, by <!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF --></td>
- <td><!-- TMPL_VAR NAME="itemtype" --></td>
+ <td><a href="/cgi-bin/koha/reserve/request.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><strong><!-- TMPL_VAR NAME="title" escape="html" --></strong></a><!-- TMPL_IF NAME="author" -->, by <!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF --></td>
<td><!-- TMPL_VAR NAME="itemcallnumber" --></td>
<td><em><!-- TMPL_IF name="barcodereserv" -->Item <!-- TMPL_VAR NAME="barcodereserv" -->
<!-- /TMPL_IF --><!-- TMPL_IF name="waiting" --> <strong>waiting at <!-- TMPL_VAR NAME="waitingat" --></strong>
@@ -621,15 +737,22 @@ No patron matched <span class="ex"><!-- TMPL_VAR name="message" --></span>
<!-- TMPL_IF name="nottransfered" --> hasn't been transfered yet from <!-- TMPL_VAR NAME="nottransferedby" --></i>
<!-- /TMPL_IF --></em></td>
<td>
- <!-- TMPL_IF NAME="waitingposition" -->
- Hold priority
- <b> <!-- TMPL_VAR NAME="waitingposition" --> </b><!-- /TMPL_IF -->
+ <!-- TMPL_IF NAME="waitingposition" --><b> <!-- TMPL_VAR NAME="waitingposition" --> </b><!-- /TMPL_IF -->
</td>
+ <td><select name="rank-request">
+ <option value="n">No</option>
+ <option value="del">Yes</option>
+ </select>
+ <input type="hidden" name="biblionumber" value="<!-- TMPL_VAR name="biblionumber" -->" />
+ <input type="hidden" name="borrowernumber" value="<!-- TMPL_VAR name="borrowernumber" -->" />
+ </td>
</tr>
<!-- /TMPL_LOOP --></tbody>
</table>
+ <fieldset class="action"><input type="submit" class="cancel" name="submit" value="Cancel Marked Requests" /></fieldset>
+ </form>
<!-- TMPL_ELSE -->
- <p>Patron has no pending holds.</p>
+ <p>Patron has nothing on hold.</p>
<!-- /TMPL_IF -->
</div> <!-- reservesloop -->
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tmpl
index 076c310..ef83bde 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/members/moremember.tmpl
@@ -14,10 +14,10 @@ $.tablesorter.addParser({
});
$(document).ready(function() {
$('#finesholdsissues > ul').tabs();
+ $.tablesorter.defaults.widgets = ['zebra'];
$("#issuest").tablesorter({<!-- TMPL_IF NAME="dateformat_metric" -->
dateFormat: 'uk',<!-- /TMPL_IF -->
- sortList: [[1,0]],
- headers: { 1: { sorter: 'articles' },4:{sorter:false},5: { sorter: false },6:{sorter:false},7:{sorter:false}}
+ headers: { 1: { sorter: 'articles' },5: { sorter: false },6:{sorter:false},7:{sorter:false},8:{sorter:false}}
});
$("#holdst").tablesorter({<!-- TMPL_IF NAME="dateformat_metric" -->
dateFormat: 'uk',<!-- /TMPL_IF -->
@@ -363,13 +363,16 @@ if (nodename =="barcodes[]"){
<div id="finesholdsissues" class="toptabs">
<ul>
- <li><a href="#checkedout">Checked Out</a></li>
- <li><a href="#finesandcharges">Fines & Charges</a></li>
- <li><a href="#onhold">On Hold</a></li>
+ <li><a href="/cgi-bin/koha/members/moremember.pl#checkedout"><!-- TMPL_VAR NAME="issuecount"--> Checkout(s)</a></li>
+ <li><a href="/cgi-bin/koha/members/moremember.pl#finesandcharges">Fines & Charges</a></li>
+ <li><!-- TMPL_IF NAME="countreserv"-->
+ <a href="/cgi-bin/koha/members/moremember.pl#onhold"><!--TMPL_VAR NAME="countreserv"--> Hold(s)</a>
+ <!-- TMPL_ELSE -->
+ <a href="/cgi-bin/koha/members/moremember.pl#onhold">0 Holds</a>
+ <!-- /TMPL_IF --></li>
</ul>
<div id="finesandcharges">
- <h2>Fines and Charges</h2>
<!-- TMPL_IF NAME="totaldue_raw" -->
<p>Total due: <!-- TMPL_VAR NAME="totaldue" --></p>
<!-- TMPL_ELSE -->
@@ -378,7 +381,6 @@ if (nodename =="barcodes[]"){
</div>
<div id="checkedout">
- <h2>Checked Out</h2>
<!-- TMPL_IF NAME="issueloop" -->
<form action="/cgi-bin/koha/reserve/renewscript.pl" method="post" class="checkboxed">
<input type="hidden" name="borrowernumber" value="<!-- TMPL_VAR NAME="borrowernumber" -->" />
@@ -386,18 +388,19 @@ if (nodename =="barcodes[]"){
<table id="issuest">
<thead>
<tr>
- <th scope="col">Item Type</th>
+ <th scope="col">Due date</th>
<th scope="col">Title</th>
+ <th scope="col">Item Type</th>
<th scope="col">Checked out on</th>
- <th scope="col">Date due</th>
+ <th scope="col">Call no</th>
<th scope="col">Charge</th>
<th scope="col">Price</th>
<th scope="col">Renew <p class="column-tool"><a href="#" id="CheckAllitems">select all</a> | <a href="#" id="CheckNoitems">none</a></p></th>
- <th scope="col">Return <p class="column-tool"><a href="#" id="CheckAllreturns">select all</a> | <a href="#" id="CheckNoreturns">none</a></p></th>
+ <th scope="col">Check in <p class="column-tool"><a href="#" id="CheckAllreturns">select all</a> | <a href="#" id="CheckNoreturns">none</a></p></th>
</tr></thead>
<tfoot>
<tr>
- <td colspan="4" style="text-align: right; font-weight:bold;">Totals:</td>
+ <td colspan="5" style="text-align: right; font-weight:bold;">Totals:</td>
<td><!-- TMPL_VAR NAME="totaldue" --></td>
<td><!-- TMPL_VAR NAME="totalprice" --></td>
<td colspan="2">
@@ -415,7 +418,7 @@ if (nodename =="barcodes[]"){
</script>
</p>
<p>
- Forgive fines on return: <input type="checkbox" name="exemptfine" value="1" />
+ <label>Forgive fines on return: <input type="checkbox" name="exemptfine" value="1" /></label>
</p>
</td>
</tr>
@@ -428,13 +431,7 @@ if (nodename =="barcodes[]"){
<!-- TMPL_ELSE -->
<tr>
<!-- /TMPL_IF -->
- <td><!-- TMPL_UNLESS NAME="noItemTypeImages" --> <!-- TMPL_IF NAME="itemtype_image" -->
- <img src="<!-- TMPL_VAR NAME="itemtype_image" -->" alt="" />
- <!-- /TMPL_IF --><!-- /TMPL_UNLESS -->
- <!-- TMPL_VAR NAME="itemtype_description" --></td>
- <td><!-- TMPL_IF NAME="red" --><a class="overdue" href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><!-- TMPL_VAR NAME="title" escape="html"--></a><!-- TMPL_ELSE --><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><!-- TMPL_VAR NAME="title" escape="html" --></a><!-- /TMPL_IF --> <!-- TMPL_IF NAME="author" -->, by <!-- TMPL_VAR name="author" --><!-- /TMPL_IF --> <!-- TMPL_IF name="publishercode" -->; <!-- TMPL_VAR name="publishercode" --> <!-- /TMPL_IF --> <!-- TMPL_IF name="publicationyear" -->, <!-- TMPL_VAR name="publicationyear" --><!-- /TMPL_IF --> <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#item<!-- TMPL_VAR NAME="itemnumber" -->"><!-- TMPL_VAR NAME="barcode" --></a></td>
- <td><!-- TMPL_VAR NAME="issuedate" --></td>
- <td><!-- TMPL_IF NAME="red" --><span class="overdue"><!-- TMPL_VAR NAME="date_due" --></span><!-- TMPL_ELSE --><!-- TMPL_VAR NAME="date_due" --><!-- /TMPL_IF -->
+ <td<!-- TMPL_IF NAME="red" --> class="od"<!-- /TMPL_IF -->><!-- TMPL_VAR NAME="date_due" -->
<!-- TMPL_IF NAME="itemlost" -->
<span class="lost"><!-- TMPL_VAR NAME="itemlost" --></span>
<!-- /TMPL_IF -->
@@ -442,12 +439,16 @@ if (nodename =="barcodes[]"){
<span class="dmg"><!-- TMPL_VAR NAME="itemdamaged" --></span>
<!-- /TMPL_IF -->
</td>
+ <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><strong><!-- TMPL_VAR NAME="title" escape="html" --></strong></a><!-- TMPL_IF NAME="author" -->, by <!-- TMPL_VAR name="author" --><!-- /TMPL_IF --> <!-- TMPL_IF name="publishercode" -->; <!-- TMPL_VAR name="publishercode" --> <!-- /TMPL_IF --> <!-- TMPL_IF name="publicationyear" -->, <!-- TMPL_VAR name="publicationyear" --><!-- /TMPL_IF --> <a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->&itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#item<!-- TMPL_VAR NAME="itemnumber" -->"><!-- TMPL_VAR NAME="barcode" --></a></td>
+<td><!-- TMPL_UNLESS NAME="noItemTypeImages" --> <!-- TMPL_IF NAME="itemtype_image" --><img src="<!-- TMPL_VAR NAME="itemtype_image" -->" alt="" /><!-- /TMPL_IF --><!-- /TMPL_UNLESS --><!-- TMPL_VAR NAME="itemtype_description" --></td>
+ <td><!-- TMPL_VAR NAME="issuedate" --></td>
+ <td><!-- TMPL_VAR NAME="itemcallnumber" --></td>
<td><!-- TMPL_VAR NAME="charge" --></td>
<td><!-- TMPL_VAR NAME="replacementprice" --></td>
<!-- TMPL_IF NAME="renew_failed" -->
<td class="problem">Renewal Failed</td>
<!-- TMPL_ELSE -->
- <td>
+ <td><span style="padding: 0 1em;"><!-- TMPL_VAR NAME="renewals" --></span>
<!-- TMPL_IF name="norenew" -->
<!-- TMPL_IF NAME="can_confirm" --><span class="renewals-allowed" style="display: none">
<input type="checkbox" name="all_items[]" value="<!-- TMPL_VAR NAME="itemnumber" -->" checked="checked" style="display: none;" />
@@ -479,7 +480,7 @@ if (nodename =="barcodes[]"){
</td>
<!-- /TMPL_IF -->
<!-- TMPL_IF NAME="return_failed" -->
- <td class="problem">Return Failed</td>
+ <td class="problem">Checkin Failed</td>
<!--TMPL_ELSE-->
<td><input type="checkbox" name="barcodes[]" value="<!-- TMPL_VAR NAME="barcode" -->" onclick="uncheck_sibling(this);" />
<input type="checkbox" name="all_barcodes[]" value="<!-- TMPL_VAR NAME="barcode" -->" checked="checked" style="display: none;" />
@@ -504,7 +505,6 @@ if (nodename =="barcodes[]"){
</div>
<div id="onhold">
- <h2>Patron current holds</h2>
<!-- TMPL_IF NAME="reservloop" -->
<form action="/cgi-bin/koha/reserve/modrequest.pl" method="post">
<input type="hidden" name="from" value="borrower" />
@@ -512,7 +512,6 @@ if (nodename =="barcodes[]"){
<thead><tr>
<th>Hold date</th>
<th>Title</th>
- <th>Item Type</th>
<th>Call Number</th>
<th>Barcode</th>
<th>Priority</th>
@@ -524,7 +523,6 @@ if (nodename =="barcodes[]"){
<td>
<a href="/cgi-bin/koha/reserve/request.pl?biblionumber=<!-- TMPL_VAR NAME="biblionumber" -->"><!-- TMPL_VAR NAME="title" escape="html" --></a><!-- TMPL_IF NAME="author" -->, by <!-- TMPL_VAR NAME="author" --><!-- /TMPL_IF -->
</td>
- <td><!-- TMPL_VAR NAME="itemtype" --></td>
<td><!-- TMPL_VAR NAME="itemcallnumber" --></td>
<td><!-- TMPL_IF name="waiting" -->
<em>Item is <strong>waiting</strong></em>
diff --git a/members/moremember.pl b/members/moremember.pl
index 67446d8..3959c12 100755
--- a/members/moremember.pl
+++ b/members/moremember.pl
@@ -216,13 +216,13 @@ $template->param( lib2 => $lib2 ) if ($lib2);
# current issues
#
my $issue = GetPendingIssues($borrowernumber);
-my $count = scalar(@$issue);
+my $issuecount = scalar(@$issue);
my $roaddetails = &GetRoadTypeDetails( $data->{'streettype'} );
my $today = POSIX::strftime("%Y-%m-%d", localtime); # iso format
my @issuedata;
my $overdues_exist = 0;
my $totalprice = 0;
-for ( my $i = 0 ; $i < $count ; $i++ ) {
+for ( my $i = 0 ; $i < $issuecount ; $i++ ) {
my $datedue = $issue->[$i]{'date_due'};
my $issuedate = $issue->[$i]{'issuedate'};
$issue->[$i]{'date_due'} = C4::Dates->new($issue->[$i]{'date_due'}, 'iso')->output('syspref');
@@ -347,7 +347,9 @@ if ($borrowernumber) {
}
# return result to the template
- $template->param( reservloop => \@reservloop );
+ $template->param( reservloop => \@reservloop,
+ countreserv => scalar @reservloop,
+ );
}
# current alert subscriptions
@@ -396,6 +398,7 @@ $template->param(
totaldue => sprintf("%.2f", $total),
totaldue_raw => $total,
issueloop => \@issuedata,
+ issuecount => $issuecount,
overdues_exist => $overdues_exist,
error => $error,
$error => 1,
diff --git a/reserve/modrequest.pl b/reserve/modrequest.pl
index 3b66623..8b7d8ee 100755
--- a/reserve/modrequest.pl
+++ b/reserve/modrequest.pl
@@ -72,6 +72,8 @@ else {
my $from=$query->param('from');
if ($from eq 'borrower'){
print $query->redirect("/cgi-bin/koha/members/moremember.pl?borrowernumber=$borrower[0]");
+ } elsif ($from eq 'circ'){
+ print $query->redirect("/cgi-bin/koha/circ/circulation.pl?borrowernumber=$borrower[0]");
} else {
my $url = "/cgi-bin/koha/reserve/request.pl?";
if ($multi_hold) {
--
1.5.6.5
More information about the Koha-patches
mailing list