[PATCH] Add page in circ just for renewing

Michael Hafen mdhafen at tech.washk12.org
Mon Sep 14 17:35:56 CEST 2009


This combines several commits from my working branch:

bugfix stickyduedate in session - renew page forgets it
bugfix my renew page - show real title in list of previous renews
add itemlost processing to my renew page.
in renew.pl move some variable assignments and check their value before use
Add fine amount to display on circ pages.
Allow renewal limits to be overridden on my custom renew page
Add page in circ just for renewing
---
 circ/renew.pl                                      |  214 ++++++++++++++++++++
 .../prog/en/includes/checkin-search.inc            |   14 ++
 .../intranet-tmpl/prog/en/includes/circ-search.inc |   15 ++-
 .../prog/en/includes/patron-search.inc             |   17 ++-
 .../prog/en/modules/circ/circulation-home.tmpl     |    1 +
 .../intranet-tmpl/prog/en/modules/circ/renew.tmpl  |  146 +++++++++++++
 6 files changed, 404 insertions(+), 3 deletions(-)
 create mode 100755 circ/renew.pl
 create mode 100644 koha-tmpl/intranet-tmpl/prog/en/modules/circ/renew.tmpl

diff --git a/circ/renew.pl b/circ/renew.pl
new file mode 100755
index 0000000..bae6e76
--- /dev/null
+++ b/circ/renew.pl
@@ -0,0 +1,214 @@
+#!/usr/bin/perl
+
+
+#copied from reserves/renewscript.pl written 18/1/2000 by chris at katipo.co.nz
+#page to renew items with their barcode
+
+
+# Copyright 2000-2002 Katipo Communications
+#
+# This file is part of Koha.
+#
+# Koha is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2 of the License, or (at your option) any later
+# version.
+#
+# Koha is distributed in the hope that it will be useful, but WITHOUT ANY
+# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+# A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License along with
+# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
+# Suite 330, Boston, MA  02111-1307 USA
+
+use strict;
+use CGI;
+use C4::Auth qw/:DEFAULT get_session/;
+use C4::Context;
+use C4::Output;
+use C4::Circulation;
+use C4::Items;
+use C4::Biblio;
+use C4::Dates qw/format_date/;
+use C4::Members;
+
+my $input = new CGI;
+
+#Set Up User_env
+# And assures user is loggedin  and has correct accreditations.
+
+my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
+    {
+        template_name   => "circ/renew.tmpl",
+        query           => $input,
+        type            => "intranet",
+        authnotrequired => 0,
+        flagsrequired   => { circulate => 1 },
+    }
+);
+
+
+# Set up the item stack ....
+my @inputloop;
+foreach ( $input->param ) {
+    (next) unless (/ri-(\d*)/);
+    my %renew_input;
+    my $counter = $1;
+    (next) if ( $counter > 20 );
+    my $barcode        = $input->param("ri-$counter");
+    my $duedate        = $input->param("dd-$counter");
+    my $borrowernumber = $input->param("bn-$counter");
+
+    # decode barcode
+    $barcode = barcodedecode( $barcode ) if ( C4::Context->preference('itemBarcodeInputFilter') );
+
+    $renew_input{counter}        = $counter;
+    $renew_input{barcode}        = $barcode;
+    $renew_input{duedate}        = $duedate;
+    $renew_input{borrowernumber} = $borrowernumber;
+    $inputloop[ $counter ] = \%renew_input;
+    $counter++;
+}
+
+my $sessionID = $input->cookie("CGISESSID") ;
+my $session = get_session($sessionID);
+my ( $soundok, $sounderror );
+my $branch = C4::Context->userenv->{'branch'};
+my $overduecharges = ( C4::Context->preference('finesMode') && C4::Context->preference('finesMode') ne 'off' );
+my $calendar = C4::Calendar->new( branchcode => $branch );
+#dropbox: get last open day (today - 1)
+my $dropboxdate = $calendar->addDate( C4::Dates->new(), -1 );
+my $dropboxmode = $input->param('dropboxmode');
+my $stickyduedate = $input->param('stickyduedate') || $session->param( 'stickyduedate' );
+my $duedatespec = $input->param('newduedate') || $session->param( 'stickyduedate' );
+my $datedue;
+if ( $duedatespec ) {
+    $datedue = C4::Dates->new( $duedatespec );
+}
+my $override_limit = $input->param("override_limit") || 0;
+my $barcode = $input->param('barcode');
+$barcode = barcodedecode( $barcode ) if ( $barcode && C4::Context->preference('itemBarcodeInputFilter') );
+
+#
+# renew items
+#
+my @messages;
+
+# check status before renewing issue
+if ( $barcode ) {
+    my $itemno = GetItemnumberFromBarcode( $barcode );
+    my $itemissue = ( $itemno ) ? GetItemIssue( $itemno ) : 0;
+    my $borrowernumber = ( $itemissue && defined( $itemissue->{borrowernumber} ) ) ? $itemissue->{borrowernumber} : 0;
+
+    my ( $renewokay, $error ) = CanBookBeRenewed( $borrowernumber, $itemno, $override_limit );
+    if ( $renewokay ) {
+	AddRenewal( $borrowernumber, $itemno, $branch, $datedue );
+
+	# Simple Patron Checks
+	my ($borrower) = C4::Members::GetMemberDetails( $borrowernumber, 0 );
+	my $flags = $borrower->{'flags'};
+	foreach my $flag ( sort keys %$flags ) {
+	    my %flaginfo;
+	    if ( $flag eq 'CHARGES' ) {
+		$sounderror = 1;
+		$flaginfo{charges} = 1;
+		$flaginfo{msg} = $flag;
+		$flaginfo{chargeamount} = $flags->{ $flag }->{amount};
+	    }
+	    elsif ( $flag eq 'WAITING' ) {
+		$sounderror = 1;
+		$flaginfo{waiting} = 1;
+		$flaginfo{msg}     = $flag;
+	    }
+	    elsif ( $flag eq 'ODUES' ) {
+		$sounderror = 1;
+		$flaginfo{overdue}  = 1;
+		$flaginfo{msg} = $flag;
+	    }
+	    push( @messages, \%flaginfo ) if ( %flaginfo );
+	}
+
+	# Item checks
+	my $item = GetItem( $itemno );
+	# was it lost?
+	if ( $item->{lost} ) {
+	    ModItem({'itemlost' => 0}, $item->{biblionumber}, $item->{itemnumber});
+	    C4::Circulation::_FixAccountForLostAndReturned($item->{itemnumber}, $borrower, $barcode);
+	    push @messages, { waslost => 1 };
+	}
+
+	$soundok = 1 unless ( $sounderror );
+
+	foreach my $ri ( @inputloop ) {
+	    $$ri{counter}++;  # prepare for unshift below
+	}
+	my %renew_input;
+	$itemissue = GetItemIssue( $itemno );
+	my $newduedate = $itemissue->{date_due};
+	$renew_input{counter}        = 0;
+	$renew_input{barcode}        = $barcode;
+	$renew_input{duedate}        = format_date( $newduedate );
+	$renew_input{borrowernumber} = $borrowernumber;
+	unshift @inputloop, \%renew_input;
+    } else {
+	push @messages, { norenew => 1, msg => $error };
+	$sounderror = 1;
+    }
+}
+
+my @riloop;
+my $count = 0;
+foreach my $ri ( @inputloop ) {
+    last if ( $count > 8 );
+
+    my ( $borrower ) = GetMemberDetails( $$ri{borrowernumber}, 0 );
+    $$ri{borcnum}        = $borrower->{'cardnumber'};
+    $$ri{borfirstname}   = $borrower->{'firstname'};
+    $$ri{borsurname}     = $borrower->{'surname'};
+    $$ri{bortitle}       = $borrower->{'title'};
+    $$ri{bornote}        = $borrower->{'borrowernotes'};
+
+    my $biblio = GetBiblioFromItemNumber(GetItemnumberFromBarcode($$ri{barcode}));
+    # fix up item type for display
+    $biblio->{'itemtype'} = C4::Context->preference('item-level_itypes') ? $biblio->{'itype'} : $biblio->{'itemtype'};
+    $$ri{itembiblionumber} = $biblio->{'biblionumber'};
+    $$ri{itemtitle}        = $biblio->{'title'};
+    $$ri{itemauthor}       = $biblio->{'author'};
+    $$ri{itemtype}         = $biblio->{'itemtype'};
+    $$ri{itemnote}         = $biblio->{'itemnotes'};
+    $$ri{ccode}            = $biblio->{'ccode'};
+    $$ri{itemnumber}       = $biblio->{'itemnumber'};
+
+    $count++;
+    push @riloop, $ri;
+}
+
+$template->param(
+    overduecharges => $overduecharges,
+    dropboxmode => $dropboxmode,
+    dropboxdate	=> $dropboxdate->output(),
+    AllowRenewalLimitOverride => C4::Context->preference("AllowRenewalLimitOverride"),
+    DHTMLcalendar_dateformat=>C4::Dates->DHTMLcalendar(),
+    stickyduedate => $stickyduedate,
+    messages => \@messages,
+    sounderror => $sounderror,
+    soundok => $soundok,
+    riloop => \@riloop,
+    );
+
+# set return date if stickyduedate
+if ( $stickyduedate && ! $input->param( 'stickyduedate' ) && $barcode ) {
+    $session->clear( 'stickyduedate' );
+    $template->param(
+	stickyduedate => '',
+	duedatespec => '',
+	);
+} elsif ($stickyduedate) {
+    $session->param( 'stickyduedate', $duedatespec );
+    $template->param(
+        newduedate => $duedatespec,
+    );
+}
+
+output_html_with_http_headers $input, $cookie, $template->output;
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/checkin-search.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/checkin-search.inc
index d455649..5a23092 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/checkin-search.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/checkin-search.inc
@@ -2,6 +2,19 @@
 <h1 id="logo"><a href="/cgi-bin/koha/mainpage.pl"><!-- TMPL_VAR NAME="LibraryName" --></a></h1><!-- Begin Checkin Resident Search Box -->
 <div id="header_search">
 <!-- TMPL_INCLUDE NAME="patron-search-box.inc" -->
+<!-- TMPL_IF NAME="CAN_user_circulate" -->
+<div id="renew_search" class="residentsearch" style="display:none;">
+    <p class="tip">Scan a barcode to renew:</p>
+    <form method="post" action="/cgi-bin/koha/circ/renew.pl">
+    <!-- TMPL_IF NAME="stickyduedate" -->
+        <input type="hidden" name="stickyduedate" value="<!-- TMPL_VAR NAME="stickyduedate" -->" />
+        <input type="hidden" name="duedatespec" value="<!-- TMPL_VAR NAME="duedatespec" -->" />
+    <!-- /TMPL_IF -->
+        <input name="barcode" id="ren_barcode" size="40" accesskey="n" />
+        <input value="Submit" class="submit" type="submit" />
+    </form>
+</div>
+<!-- /TMPL_IF -->
 <!-- TMPL_IF NAME="CAN_user_catalogue" -->
 <div id="catalog_search" class="residentsearch" style="display:none;">
     <p class="tip">Enter search keywords:</p>
@@ -13,6 +26,7 @@
 <!-- /TMPL_IF -->
 <ul>
     <!-- TMPL_IF NAME="CAN_user_circulate" --><li><a href="/cgi-bin/koha/circ/circulation.pl#circ_search">Check Out</a></li><!-- /TMPL_IF -->
+    <!-- TMPL_IF NAME="CAN_user_circulate" --><li><a href="/cgi-bin/koha/circ/renew.pl#renew_search">Renew</a></li><!-- /TMPL_IF -->
     <!-- TMPL_IF NAME="CAN_user_catalogue" --><li><a href="/cgi-bin/koha/catalogue/search.pl#catalog_search">Search the Catalog</a></li><!-- /TMPL_IF -->
 </ul>   
 
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/circ-search.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/circ-search.inc
index 4b8841b..17f3841 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/circ-search.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/circ-search.inc
@@ -10,7 +10,19 @@
         <input name="barcode" id="ret_barcode" size="40" accesskey="r" />
         <input value="Submit" class="submit" type="submit" />
     </form>
-</div><!-- /TMPL_IF -->
+</div>
+<div id="renew_search" class="residentsearch" style="display:none;">
+    <p class="tip">Scan a barcode to renew:</p>
+    <form method="post" action="/cgi-bin/koha/circ/renew.pl">
+    <!-- TMPL_IF NAME="stickyduedate" -->
+        <input type="hidden" name="stickyduedate" value="<!-- TMPL_VAR NAME="stickyduedate" -->" />
+        <input type="hidden" name="duedatespec" value="<!-- TMPL_VAR NAME="duedatespec" -->" />
+    <!-- /TMPL_IF -->
+        <input name="barcode" id="ren_barcode" size="40" accesskey="n" />
+        <input value="Submit" class="submit" type="submit" />
+    </form>
+</div>
+<!-- /TMPL_IF -->
 <!-- TMPL_IF NAME="CAN_user_catalogue" -->
 <div id="catalog_search" class="residentsearch" style="display:none;">
     <p class="tip">Enter search keywords:</p>
@@ -23,6 +35,7 @@
 <ul>
     <!-- TMPL_IF NAME="CAN_user_circulate" --><li><a href="/cgi-bin/koha/circ/circulation.pl#circ_search">Check Out</a></li><!-- /TMPL_IF -->
     <!-- TMPL_IF NAME="CAN_user_circulate" --><li><a href="/cgi-bin/koha/circ/returns.pl#checkin_search">Check In</a></li><!-- /TMPL_IF -->
+    <!-- TMPL_IF NAME="CAN_user_circulate" --><li><a href="/cgi-bin/koha/circ/renew.pl#renew_search">Renew</a></li><!-- /TMPL_IF -->
     <!-- TMPL_IF NAME="CAN_user_catalogue" --><li><a href="/cgi-bin/koha/catalogue/search.pl#catalog_search">Search the Catalog</a></li><!-- /TMPL_IF -->
 </ul>   
 
diff --git a/koha-tmpl/intranet-tmpl/prog/en/includes/patron-search.inc b/koha-tmpl/intranet-tmpl/prog/en/includes/patron-search.inc
index a054829..f116316 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/includes/patron-search.inc
+++ b/koha-tmpl/intranet-tmpl/prog/en/includes/patron-search.inc
@@ -78,7 +78,19 @@ YAHOO.util.Event.onContentReady("header_search", function() {
             <input value="Submit" class="submit" type="submit" />
 	<!-- /TMPL_IF -->
     </form>
-	</div><!-- /TMPL_IF -->
+	</div>
+        <div id="renew_search" class="residentsearch" style="display:none;">
+            <p class="tip">Scan a barcode to renew:</p>
+            <form method="post" action="/cgi-bin/koha/circ/renew.pl">
+	    <!-- TMPL_IF NAME="stickyduedate" -->
+                <input type="hidden" name="stickyduedate" value="<!-- TMPL_VAR NAME="stickyduedate" -->" />
+                <input type="hidden" name="duedatespec" value="<!-- TMPL_VAR NAME="duedatespec" -->" />
+	    <!-- /TMPL_IF -->
+                <input name="barcode" id="ren_barcode" size="40" accesskey="n" />
+                <input value="Submit" class="submit" type="submit" />
+            </form>
+        </div>
+	<!-- /TMPL_IF -->
 	<!-- TMPL_IF NAME="CAN_user_catalogue" -->
 	<div id="catalog_search" class="residentsearch" style="display:none;">
 	<p class="tip">Enter search keywords:</p>
@@ -90,7 +102,8 @@ YAHOO.util.Event.onContentReady("header_search", function() {
 			<ul>
 			<li><a href="/cgi-bin/koha/members/members-home.pl#patron_search">Search Patrons</a></li>
 			<!-- TMPL_IF NAME="CAN_user_circulate" --><li><a href="/cgi-bin/koha/circ/circulation.pl#circ_search">Check Out</a></li><!-- /TMPL_IF -->
+			<!-- TMPL_IF NAME="CAN_user_circulate" --><li><a href="/cgi-bin/koha/circ/renew.pl#renew_search">Renew</a></li><!-- /TMPL_IF -->
 			<!-- TMPL_IF NAME="CAN_user_catalogue" --><li><a href="/cgi-bin/koha/catalogue/search.pl#catalog_search">Search the Catalog</a></li><!-- /TMPL_IF -->
 			</ul>	
 </div>
-<!-- End Patrons Resident Search Box -->
\ No newline at end of file
+<!-- End Patrons Resident Search Box -->
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation-home.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation-home.tmpl
index 884b0dc..353c5b9 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation-home.tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/circulation-home.tmpl
@@ -19,6 +19,7 @@
 	<ul>
 		<li><a href="/cgi-bin/koha/circ/circulation.pl">Check Out</a></li>
 		<li><a href="/cgi-bin/koha/circ/returns.pl">Check In</a></li>
+		<li><a href="/cgi-bin/koha/circ/renew.pl">Renew</a></li>
 		<li><a href="/cgi-bin/koha/circ/branchtransfers.pl">Transfer</a></li>
 	<!-- TMPL_IF NAME="AutoLocation" --><!-- TMPL_ELSE --><!-- TMPL_IF NAME="IndependantBranches" --><!-- TMPL_ELSE --><li><a href="/cgi-bin/koha/circ/selectbranchprinter.pl">Set library</a></li><!-- /TMPL_IF --><!-- /TMPL_IF -->
 	</ul>
diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/circ/renew.tmpl b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/renew.tmpl
new file mode 100644
index 0000000..62c58b0
--- /dev/null
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/circ/renew.tmpl
@@ -0,0 +1,146 @@
+<!-- TMPL_INCLUDE NAME="doc-head-open.inc" -->
+<title>Koha &rsaquo; Circulation &rsaquo; Renew <!-- TMPL_VAR Name="title" --></title>
+<!-- TMPL_INCLUDE NAME="doc-head-close.inc" -->
+<!-- TMPL_INCLUDE NAME="calendar.inc" -->
+<script type="text/javascript">
+//<![CDATA[
+function Dopop(link) {
+    var newin=window.open(link,'popup','width=600,height=400,resizable=1,toolbar=0,scrollbars=1,top');
+}
+		<!-- TMPL_IF NAME="overduecharges" -->$("#barcode").focus(function(){
+			if(($("#exemptcheck").attr("checked") == true)||($("#dropboxcheck").attr("checked") == true)){
+				$("#barcode").addClass("alert");
+			} else {
+				$("#barcode").removeClass("alert");
+			}
+		});
+		$("#barcode").blur(function(){
+			$("#barcode").removeClass("alert");
+		});<!-- /TMPL_IF -->
+	 });
+//]]>
+</script>
+</head>
+<body>
+<!-- TMPL_INCLUDE NAME="header.inc" -->
+<!-- TMPL_INCLUDE NAME="circ-search.inc" -->
+
+<div id="breadcrumbs"><a href="/cgi-bin/koha/mainpage.pl">Home</a> &rsaquo; <a href="/cgi-bin/koha/circ/circulation-home.pl">Circulation</a> &rsaquo; Renew</div>
+
+<div id="doc" class="yui-t7">
+
+   <div id="bd">
+	<div id="yui-main">
+
+<!-- TMPL_IF NAME="messages" -->
+<div class="yui-g">
+    <div class="dialog message">
+        <!-- TMPL_LOOP Name="messages" -->
+            <!-- TMPL_IF Name="badbarcode" -->
+                <p class="problem">No Item with barcode: <!-- TMPL_VAR Name="msg" --></p>
+            <!-- /TMPL_IF -->
+            <!-- TMPL_IF Name="norenew" -->
+                <p class="problem">Item Not Renewable: <!-- TMPL_VAR Name="msg" --></p>
+            <!-- /TMPL_IF -->
+            <!-- TMPL_IF Name="notissued" -->
+                <p class="problem">Not checked out.</p>
+            <!-- /TMPL_IF -->
+            <!-- TMPL_IF Name="charges" -->
+                <p class="problem">Patron has fines<!-- TMPL_IF NAME="chargeamount" --> of $<!-- TMPL_VAR NAME="chargeamount" --><!-- /TMPL_IF -->.</p>
+            <!-- /TMPL_IF -->
+            <!-- TMPL_IF Name="waiting" -->
+                <p class="problem">Patron has hold(s) waiting.</p>
+            <!-- /TMPL_IF -->
+            <!-- TMPL_IF Name="overdue" -->
+                <p class="problem">Patron has overdue copies.</p>
+            <!-- /TMPL_IF -->
+            <!-- TMPL_IF Name="waslost" -->
+                <p class="problem">Item was lost, now found.</p>
+            <!-- /TMPL_IF -->
+        <!-- /TMPL_LOOP -->
+    </div>
+</div>
+<!-- /TMPL_IF -->
+
+<div class="yui-g">
+    <form method="post" action="/cgi-bin/koha/circ/renew.pl" >
+    <div class="yui-u first">
+        <fieldset id="circ_circulation_issue">
+            <legend>Renew</legend>
+            <label for="barcode">Enter item barcode: </label>
+            <!-- TMPL_IF NAME="exemptfine" -->
+            <input name="barcode" id="barcode" size="14" class="focus alert"/>
+            <!-- TMPL_ELSIF NAME="dropboxmode"-->
+            <input name="barcode" id="barcode" size="14" class="focus alert"/>
+            <!-- TMPL_ELSE -->
+            <input name="barcode" id="barcode" size="14" class="focus"/>
+            <!-- /TMPL_IF -->
+            <input type="submit" class="submit" value="Submit" />
+
+            <!-- TMPL_IF NAME="AllowRenewalLimitOverride" -->
+	    <div class="hint date-select">
+	    <label for="override_limit">Override Renewal Limit:</label>
+            <input type="checkbox" name="override_limit" id="override_limit" />
+	    </div>
+            <!-- /TMPL_IF -->
+	    <div class="date-select">
+            <div class="hint">Renewal due date:</div> <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[
+                Calendar.setup({
+                    inputField : "newduedate",
+                    ifFormat : "<!-- TMPL_VAR NAME="DHTMLcalendar_dateformat" -->",
+                    button : "newduedate_button"
+                });
+                //]]>
+            </script>
+
+            <label for="stickyduedate"> Remember for Session:</label>
+<!-- TMPL_IF NAME="stickyduedate" -->
+<input type="checkbox" id="stickyduedate" onclick="this.form.barcode.focus();" name="stickyduedate" checked="1" />
+<!-- TMPL_ELSE -->
+<input type="checkbox" id="stickyduedate" onclick="this.form.barcode.focus();" name="stickyduedate" />
+<!-- /TMPL_IF -->
+	    </div>
+
+            <!-- TMPL_LOOP Name="riloop" -->
+                <input type="hidden" name="ri-<!-- TMPL_VAR Name="counter" -->" value="<!-- TMPL_VAR Name="barcode" -->" />
+                <input type="hidden" name="dd-<!-- TMPL_VAR Name="counter" -->" value="<!-- TMPL_VAR Name="duedate" -->" />
+                <input type="hidden" name="bn-<!-- TMPL_VAR Name="counter" -->" value="<!-- TMPL_VAR Name="borrowernumber" -->" />
+            <!-- /TMPL_LOOP -->
+        </fieldset>
+    </div>
+    </form>
+</div>
+
+<!-- Tmpl_INCLUDE NAME="sound.inc" -->
+<!-- TMPL_IF Name="riloop" -->
+    <h2>Renewed items</h2>
+    <table>
+	<tr><th>Due Date</th>	<th>Title</th>	<th>Author</th>	<th>Barcode</th>	<th>Type</th>	<th>Patron</th><th>Note</th></tr>
+
+        <!-- TMPL_LOOP Name="riloop" -->
+            <tr>
+            <td><!-- TMPL_IF Name="duedate" --><!-- TMPL_VAR NAME="duedate" --><!-- TMPL_ELSE -->Not checked out<!-- /TMPL_IF --></td>
+            <td><a href="/cgi-bin/koha/catalogue/detail.pl?biblionumber=<!-- TMPL_VAR Name="itembiblionumber" -->">
+                    <!-- TMPL_VAR Name="itemtitle" --></a></td>
+			<td><!-- TMPL_VAR Name="itemauthor" --></td>
+            <td><a href="/cgi-bin/koha/catalogue/moredetail.pl?biblionumber=<!-- TMPL_VAR NAME="itembiblionumber" -->&itemnumber=<!-- TMPL_VAR NAME="itemnumber" -->#item<!-- TMPL_VAR NAME="itemnumber" -->"><!-- TMPL_VAR Name="barcode" --></a></td>
+            <td><!-- TMPL_VAR Name="itemtype" --> <!-- TMPL_VAR Name="ccode" --></td>
+			 <td><!-- TMPL_IF Name="duedate" -->
+                <a href="/cgi-bin/koha/members/moremember.pl?borrowernumber=<!-- TMPL_VAR Name="borrowernumber" -->">
+                    <!-- TMPL_VAR Name="borsurname" -->, <!-- TMPL_VAR Name="borfirstname" -->
+                </a>
+            <!-- TMPL_ELSE -->Not checked out<!-- /TMPL_IF --></td>
+            <td><!-- TMPL_IF name="bornote" --><span class="circ-hlt"><!-- TMPL_VAR name="bornote" --><br /></span><!-- /TMPL_IF -->
+            <!-- TMPL_IF name="itemnote" --><span class="circ-hlt"><!-- TMPL_VAR name="itemnote" --></span><!-- /TMPL_IF -->
+            </td>
+           </tr>
+        <!-- /TMPL_LOOP -->
+    </table></div>
+<!-- /TMPL_IF -->
+
+</div>
+</div>
+<!-- TMPL_INCLUDE NAME="intranet-bottom.inc" -->
-- 
1.6.0.4


--=-8tRGwL1cLLV7nQCGpPoR--



More information about the Koha-patches mailing list