koha-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Koha-cvs] CVS: koha/circ returns.pl,1.24,1.25


From: Henri-Damien LAURENT
Subject: [Koha-cvs] CVS: koha/circ returns.pl,1.24,1.25
Date: Wed, 29 Jan 2003 14:45:11 -0800

Update of /cvsroot/koha/koha/circ
In directory sc8-pr-cvs1:/tmp/cvs-serv23700/circ

Modified Files:
        returns.pl 
Log Message:
Templating : returns.pl

Index: returns.pl
===================================================================
RCS file: /cvsroot/koha/koha/circ/returns.pl,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -r1.24 -r1.25
*** returns.pl  15 Jan 2003 03:47:46 -0000      1.24
--- returns.pl  29 Jan 2003 22:45:07 -0000      1.25
***************
*** 29,33 ****
--- 29,48 ----
  use C4::Print;
  use C4::Reserves2;
+ use C4::Auth;
+ use HTML::Template;
  
+ 
+ my $query=new CGI;
+ #getting the template
+ my ($template, $borrowernumber, $cookie)
+     = get_template_and_user({template_name => "circ/returns.tmpl",
+                                                       query => $query,
+                             type => "intranet",
+                             authnotrequired => 0,
+                             flagsrequired => {parameters => 1},
+                          });
+ 
+ #####################
+ #Global vars
  my %env;
  my $headerbackgroundcolor='#99cc33';
***************
*** 38,42 ****
  my $backgroundimage="/images/background-mem.gif";
  
- my $query=new CGI;
  my $branches = getbranches();
  my $printers = getprinters(\%env);
--- 53,56 ----
***************
*** 48,51 ****
--- 62,67 ----
  ($printer) || ($printer=$query->cookie('printer')) ;
  
+ my $genbrname=$branches->{$branch}->{'branchname'};
+ my $genprname=$printers->{$printer}->{'printer'};
  
  #
***************
*** 58,68 ****
  $env{'queue'}=$printer;
  
  # Set up the item stack ....
- my $ritext = '';
  my %returneditems;
  my %riduedate;
  my %riborrowernumber;
  foreach ($query->param) {
      (next) unless (/ri-(\d*)/);
      my $counter=$1;
      (next) if ($counter>20);
--- 74,86 ----
  $env{'queue'}=$printer;
  
+ 
  # Set up the item stack ....
  my %returneditems;
  my %riduedate;
  my %riborrowernumber;
+ my @inputloop;
  foreach ($query->param) {
      (next) unless (/ri-(\d*)/);
+       my %input;
      my $counter=$1;
      (next) if ($counter>20);
***************
*** 73,88 ****
      # decode cuecat
      $barcode = cuecatbarcodedecode($barcode);
      $returneditems{$counter}=$barcode;
      $riduedate{$counter}=$duedate;
      $riborrowernumber{$counter}=$borrowernumber;
!     $ritext.="<input type=hidden name=ri-$counter value=$barcode>\n";
!     $ritext.="<input type=hidden name=dd-$counter value=$duedate>\n";
!     $ritext.="<input type=hidden name=bn-$counter value=$borrowernumber>\n";
  }
  
- # Collect a few messages here...
- my $messagetext='';
- my $reservetext='';
- 
  ############
  # Deal with the requests....
--- 91,107 ----
      # decode cuecat
      $barcode = cuecatbarcodedecode($barcode);
+       ######################
+       #Are these lines still useful ?
      $returneditems{$counter}=$barcode;
      $riduedate{$counter}=$duedate;
      $riborrowernumber{$counter}=$borrowernumber;
!       #######################
!       $input{counter}=$counter;
!       $input{barcode}=$barcode;
!       $input{duedate}=$duedate;
!       $input{bornum}=$borrowernumber;
!       push (@inputloop, \%input);
  }
  
  ############
  # Deal with the requests....
***************
*** 96,116 ****
      my $branchname = $branches->{$tobranchcd}->{'branchname'};
      my ($borr) = getpatroninformation(\%env, $borrnum, 0);
      my $name = $borr->{'surname'}." ".$borr->{'title'}." 
".$borr->{'firstname'};
-     my $number = "<a 
href=/cgi-bin/koha/moremember.pl?bornum=$borr->{'borrowernumber'} 
onClick='openWindow(this,'Member', 480, 640)'>$borr->{'cardnumber'}</a>";
      my $slip = $query->param('resslip');
      printslip(\%env, $slip);
      if ($tobranchcd ne $branch) {
! #     my ($transfered, $messages, $iteminfo) = transferbook($tobranchcd, 
$resbarcode, 1);
!       $reservetext .= <<"EOF";
! <font color='red' size='+2'>Item marked Waiting:</font><br>
!     Item: $iteminfo->{'title'} ($iteminfo->{'author'})<br>
!  needs to be transfered to <b>$branchname</b> <br>
! to be picked up by $name ($number).
! <center><form method=post action='returns.pl'>
! $ritext
! <input type=hidden name=barcode value=0>
! <input type=submit value="OK">
! </form></center>
! EOF
      }
  }
--- 115,130 ----
      my $branchname = $branches->{$tobranchcd}->{'branchname'};
      my ($borr) = getpatroninformation(\%env, $borrnum, 0);
+       my $borcnum=$borr->{'cardnumber'};
      my $name = $borr->{'surname'}." ".$borr->{'title'}." 
".$borr->{'firstname'};
      my $slip = $query->param('resslip');
      printslip(\%env, $slip);
      if ($tobranchcd ne $branch) {
!               $template->param(       itemtitle => $iteminfo->{'title'},
!                                                                               
iteminfo => $iteminfo->{'author'},
!                                                                               
branchname => $branchname,
!                                                                               
name => $name,
!                                                                               
bornum => $borrnum,
!                                                                               
borcnum => $borcnum,
!                                                                               
diffbranch => 1);
      }
  }
***************
*** 127,203 ****
      $barcode = cuecatbarcodedecode($barcode);
      ($returned, $messages, $iteminformation, $borrower) = 
returnbook($barcode, $branch);
-     $ritext.= "<input type=hidden name=ri-0 value=$barcode>\n";
      if ($returned) {
!       $returneditems{0} = $barcode;
!       $riborrowernumber{0} = $borrower->{'borrowernumber'};
!       $riduedate{0} = $iteminformation->{'date_due'};
!       $ritext.= "<input type=hidden name=dd-0 
value=$iteminformation->{'date_due'}>\n";
!       $ritext.= "<input type=hidden name=bn-0 
value=$borrower->{'borrowernumber'}>\n";
      } elsif (! $messages->{'BadBarcode'}) {
!       $returneditems{0} = $barcode;
!       $riduedate{0} = 0;
!       $ritext.= "<input type=hidden name=dd-0 value=0>\n";
!       if ($messages->{'wthdrawn'}) {
!           $ritext.= "<input type=hidden name=bn-0 value='Item Cancelled'>\n";
!           $riborrowernumber{0} = 'Item Cancelled';
!       } else {
!           $ritext.= "<input type=hidden name=bn-0 value='&nbsp;'>\n";
!           $riborrowernumber{0} = '&nbsp;';
        }
!     }
! }
! 
! 
##################################################################################
! # HTML code....
! # title....
! my $title = <<"EOF";
! <FONT SIZE=6><em>Circulation: Returns</em></FONT><br>
! <b>Branch:</b> $branches->{$branch}->{'branchname'} &nbsp<b>Printer:</b> 
$printers->{$printer}->{'printername'}<br>
! <a href=selectbranchprinter.pl>Change Settings</a>
! <input type=hidden name=branch value=$branch>
! <input type=hidden name=printer value=$printer>
! <p>
! EOF
! 
! my $links = <<"EOF";
! <table align="right"><tr><td>
! <a href=circulation.pl>
! <img src="/images/button-issues.gif" width="99" height="42" border="0" 
alt="Issues"></a>
! &nbsp<a href=branchtransfers.pl><img src="/images/button-transfers.gif" 
width="127" height="42" border="0" alt="Issues"></a>
! </td></tr></table>
! EOF
! 
! 
! my $itemtable;
! if ($iteminformation) {
!     $itemtable = <<"EOF";
! <table border=1 cellpadding=5 cellspacing=0>
! <tr><th bgcolor=$headerbackgroundcolor background=$backgroundimage>
! <font color=black>Returned Item Information</font></th></tr>
! <tr><td>
! Title: $iteminformation->{'title'}<br>
! <!--Hlt decided they dont want these showing, uncoment the html to make it 
work
! 
! Author: $iteminformation->{'author'}<br>
! Barcode: <a 
href=/cgi-bin/koha/detail.pl?bib=$iteminformation->{'biblionumber'}
! &type=intra onClick="openWindow(this, 'Item', 480, 
640)">$iteminformation->{'barcode'}</a><br>
! Date Due: $iteminformation->{'date_due'}-->
! </td></tr>
! </table>
! EOF
! }
  
- # Barcode entry box, with hidden inputs attached....
- my $barcodeentrytext = << "EOF";
- <form method=post action=/cgi-bin/koha/circ/returns.pl>
- <table border=1 cellpadding=5 cellspacing=0>
- <tr><td colspan=2 bgcolor=$headerbackgroundcolor align=center 
background=$backgroundimage>
- <font color=black><b>Enter Book Barcode</b></font></td></tr>
- <tr><td>Item Barcode:</td><td><input name=barcode size=10></td></tr>
- </table>
- $ritext
- </form>
- EOF
  
  
  if ($messages->{'ResFound'}) {
--- 141,186 ----
      $barcode = cuecatbarcodedecode($barcode);
      ($returned, $messages, $iteminformation, $borrower) = 
returnbook($barcode, $branch);
      if ($returned) {
!               $returneditems{0} = $barcode;
!               $riborrowernumber{0} = $borrower->{'borrowernumber'};
!               $riduedate{0} = $iteminformation->{'date_due'};
!               my %input;
!               $input{counter}=0;
!               $input{first}=1;
!               $input{barcode}=$barcode;
!               $input{duedate}=$riduedate{0};
!               $input{bornum}=$riborrowernumber{0};
!               push (@inputloop, \%input);
      } elsif (! $messages->{'BadBarcode'}) {
!               my %input;
!               $input{counter}=0;
!               $input{first}=1;
!               $input{barcode}=$barcode;
!               $input{duedate}=0;
! 
!               $returneditems{0} = $barcode;
!               $riduedate{0} = 0;
!               if ($messages->{'wthdrawn'}) {
!                       $input{withdrawn}=1;
!                       $input{bornum}="Item Cancelled";
!                       $riborrowernumber{0} = 'Item Cancelled';
!               } else {
!                       $input{bornum}="&nbsp;";
!                       $riborrowernumber{0} = '&nbsp;';
!               }
!               push (@inputloop, \%input);
        }
!       $template->param(       returned => $returned,
!                                                                       
itemtitle => $iteminformation->{'title'},
! #                                                                     itembc 
=> $iteminformation->{'barcode'},
! #                                                                     
itemdatedue => $iteminformation->{'datedue'},
!                                                                       
itemauthor => $iteminformation->{'author'});
! }
! $template->param(inputloop => address@hidden);
  
  
+ my $found=0;
+ my $waiting=0;
+ my $reserved=0;
  
  if ($messages->{'ResFound'}) {
***************
*** 206,483 ****
      my ($borr) = getpatroninformation(\%env, $res->{'borrowernumber'}, 0);
      my $name = $borr->{'surname'}." ".$borr->{'title'}." 
".$borr->{'firstname'};
-     my $number = "<a 
href=/cgi-bin/koha/moremember.pl?bornum=$borr->{'borrowernumber'} 
onClick='openWindow(this,'Member', 480, 640)'>$borr->{'cardnumber'}</a>";
      my ($iteminfo) = getiteminformation(\%env, 0, $barcode);
  
      if ($res->{'ResFound'} eq "Waiting") {
!       $reservetext = <<"EOF";
! <font color='red' size='+2'>Item marked Waiting:</font><br>
!     Item $iteminfo->{'title'} ($iteminfo->{'author'}) <br>
! is marked waiting at <b>$branchname</b> for $name ($number).
! <center><form method=post action='returns.pl'>
! $ritext
! <input type=hidden name=barcode value=0>
! <input type=submit value="OK">
! </form></center>
! EOF
!     }    if ($res->{'ResFound'} eq "Reserved") {
!       my @da = localtime(time());
!       my $todaysdate = sprintf ("%0.2d", ($da[3]+1))."/".sprintf ("%0.2d", 
($da[4]+1))."/".($da[5]+1900);
!       my $slip =  <<"EOF";
! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
! Date: $todaysdate;
! 
! ITEM RESERVED:$iteminfo->{'title'} ($iteminfo->{'author'})
! barcode: $iteminfo->{'barcode'}
! itemtype: $iteminfo->{'itemtype'}
! COLLECT AT: $branchname
! 
! BORROWER:
! $borr->{'title'} $borr->{'firstname'} $borr->{'surname'}
! card number: $borr->{'cardnumber'}
! Phone: $borr->{'phone'}
! $borr->{'streetaddress'}
! $borr->{'suburb'}
! $borr->{'town'}
! $borr->{'emailaddress'}
! 
! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
! 
! EOF
! 
!       $reservetext = <<"EOF";
! <font color='red' size='+2'>Reserve found:</font> Item: $iteminfo->{'title'} 
($iteminfo->{'author'}) <a 
href=/cgi-bin/koha/detail.pl?bib=$iteminfo->{'biblionumber'}&type=intra 
onClick=\"openWindow(this, 'Item', 480, 640)\">$barcode</a> <br>
! for $name ($number) to be collected at <b>$branchname</b>.
! <table cellpadding=5 cellspacing=0>
! <tr><td valign="top">Change status to waiting and print<a href="" 
onClick='alert(document.forms[0].resslip.value); return false'>slip</a>?: </td>
! <td valign="top">
! <form method=post action='returns.pl'>
! $ritext
! <input type=hidden name=itemnumber value=$res->{'itemnumber'}>
! <input type=hidden name=borrowernumber value=$res->{'borrowernumber'}>
! <input type=hidden name=resbarcode value=$barcode>
! <input type=hidden name=resslip value="$slip">
! <input type=submit value="Print">
! </form>
! </td></tr>
! </table>
! EOF
      }
  }
- my $reservefoundtext;
- if ($reservetext) {
-     $reservefoundtext = <<"EOF";
- <table border=1 cellpadding=5 cellspacing=0 bgcolor='#dddddd'>
- <tr><th bgcolor=$headerbackgroundcolor 
background=$backgroundimage><font>Reserve Found</font></th></tr>
- <tr><td> $reservetext </td></tr></table>
- EOF
- }
  
! # collect the messages and put into message table....
  foreach my $code (keys %$messages) {
  #    warn $code;
      if ($code eq 'BadBarcode'){
!       $messagetext .= "<font color='red' size='+2'> No Item with barcode: 
$messages->{'BadBarcode'} </font> <br>";
      }
      if ($code eq 'NotIssued'){
!       my $braname = $branches->{$messages->{'IsPermanent'}}->{'branchname'};
!       $messagetext .= "<font color='red' size='+2'> Item not on issue. 
</font> <br>";
      }
      if ($code eq 'WasLost'){
!       $messagetext .= "<font color='red' size='+2'> Item was lost, now found. 
</font> <br>";
      }
      if ($code eq 'wthdrawn'){
!       $messagetext = "<font color='red' size='+2'> Item Cancelled. </font> 
<br>";
        last;
      }
      if (($code eq 'IsPermanent') && (not $messages->{'ResFound'})) {
!       if ($messages->{'IsPermanent'} ne $branch) {
!           $messagetext .= "<font color='red' size='+2'> Please return to 
$branches->{$messages->{'IsPermanent'}}->{'branchname'} </font> <br>";
!       }
      }
  }
! $messagetext = substr($messagetext, 0, -4);
! 
! my $messagetable;
! if ($messagetext) {
!     $messagetable = << "EOF";
! <table border=1 cellpadding=5 cellspacing=0 bgcolor='#dddddd'>
! <tr><th bgcolor=$headerbackgroundcolor 
background=$backgroundimage><font>Messages</font></th></tr>
! <tr><td> $messagetext </td></tr></table>
! EOF
! }
! 
  
  # patrontable ....
- my $borrowertable;
- my $flaginfotable;
  if ($borrower) {
-     $borrowertable = << "EOF";
- <table border=1 cellpadding=5 cellspacing=0>
- <tr><td colspan=2 bgcolor=$headerbackgroundcolor background=$backgroundimage>
- <font color=black><b>Borrower Information</b></font></td></tr>
- <tr><td colspan=2>
- <a 
href=/cgi-bin/koha/moremember.pl?bornum=$borrower->{'borrowernumber'}onClick="openWindow(this,'Member',
 480, 640)">$borrower->{'cardnumber'}</a>
- $borrower->{'surname'}, $borrower->{'title'} $borrower->{'firstname'}<br>
- </td></tr>
- EOF
      my $flags = $borrower->{'flags'};
-     my $flaginfotext='';
-     my $displayflag = '';
      my $color = '';
      foreach my $flag (sort keys %$flags) {
!       ($color eq $linecolor1) ? ($color=$linecolor2) : ($color=$linecolor1);
!       if ($flags->{$flag}->{'noissues'}) {
!           $displayflag = "<font color=red>$flag</font>";
!       } else {
!           $displayflag = $flag;
!       }       if ($flag eq 'CHARGES') {
!           $flaginfotext.= <<"EOF";
! <tr><td valign=top>$displayflag</td>
! <td bgcolor=$color><b>$flags->{$flag}->{'message'}</b><a 
href=/cgi-bin/koha/pay.pl?bornum=$borrower->{'borrowernumber'}onClick="openWindow(this,
 'Payment', 480,640)">Payment</a></td></tr>
! EOF
!       } elsif ($flag eq 'WAITING') {
!           my $itemswaiting='';
!           my $items = $flags->{$flag}->{'itemlist'};
!           foreach my $item (@$items) {
!               my ($iteminformation) = getiteminformation(\%env, 
$item->{'itemnumber'}, 0);
!               $itemswaiting .= <<"EOF";
! <a 
href=/cgi-bin/koha/detail.pl?bib=$iteminformation->{'biblionumber'}&type=intraonClick="openWindow(this,
 'Item', 480, 
640)">$iteminformation->{'barcode'}</a>$iteminformation->{'title'}($branches->{$iteminformation->{'holdingbranch'}}->{'branchname'})<br>
! EOF
!             }
!             $flaginfotext.="<tr><td 
valign=top>$displayflag</td><td>$itemswaiting</td></tr>\n";
!       } elsif ($flag eq 'ODUES') {
!           my $itemsoverdue = '';
!           my $items = $flags->{$flag}->{'itemlist'};
!             foreach my $item (sort {$a->{'date_due'} cmp $b->{'date_due'}} 
@$items) {
!               my ($iteminformation) = getiteminformation(\%env, 
$item->{'itemnumber'}, 0);
!                 $itemsoverdue .=  <<"EOF";
! <font color=red>$item->{'date_due'}</font>
! <a 
href=/cgi-bin/koha/detail.pl?bib=$iteminformation->{'biblionumber'}&type=intraonClick="openWindow(this,
 'Item', 480, 640)">$iteminformation->{'barcode'}</a>$iteminformation->{'title'}
! <br>
! EOF
!           }
!           $flaginfotext .= "<tr><td 
valign=top>$displayflag</td><td>$itemsoverdue</td></tr>\n";
!         } else {
!           $flaginfotext.= <<"EOF";
! <tr><td valign=top>$displayflag</td>
! <td bgcolor=$color>$flags->{$flag}->{'message'}</td></tr>
! EOF
!       }
!     }
!     if ($flaginfotext) {
!       $borrowertable .= << "EOF";
! <tr><td bgcolor=$headerbackgroundcolor background=$backgroundimage colspan=2>
! <b>Flags</b></td></tr>
! $flaginfotext
! EOF
!     }
!     $borrowertable .= "</table>";
  }
  
- # the returned items.....
- my $returneditemstable = << "EOF";
- <table border=1 cellpadding=5 cellspacing=0>
- <tr><th colspan=6 bgcolor=$headerbackgroundcolor background=$backgroundimage>
- <font color=black>Returned Items</font></th></tr>
- <tr><th>Due Date</th><th>Bar 
Code</th><th>Title</th><th>Author</th><th>Type</th><th>Borrower</th></tr>
- EOF
- 
  my $color='';
  #set up so only the lat 8 returned items display (make for faster loading 
pages)
  my $count=0;
  foreach (sort {$a <=> $b} keys %returneditems) {
      if ($count < 8) {
!       ($color eq $linecolor1) ? ($color=$linecolor2) : ($color=$linecolor1);
!       my $barcode = $returneditems{$_};
!       my $duedate = $riduedate{$_};
!       my $overduetext;
          my $borrowerinfo;
!       if ($duedate) {
!           my @tempdate = split ( /-/ , $duedate ) ;
              my $duedatenz = "$tempdate[2]/$tempdate[1]/$tempdate[0]";
              my @datearr = localtime(time());
!             my $todaysdate = (1900+$datearr[5]).'-'.sprintf ("%0.2d", 
($datearr[4]+1)).'-'.sprintf ("%0.2d", $datearr[3]);
!           $overduetext = "$duedatenz";
!           ($overduetext="<font color=red>$duedate</font>") if ($duedate lt 
$todaysdate);
!           ($duedatenz) || ($overduetext = "<img src=/images/blackdot.gif>");
!           my ($borrower) = getpatroninformation(\%env, $riborrowernumber{$_}, 
0);
!             $borrowerinfo = "<a 
href=/cgi-bin/koha/moremember.pl?bornum=$borrower->{'borrowernumber'} 
onClick=\"openWindow(this,'Member', 480, 640)\">$borrower->{'cardnumber'}</a> 
$borrower->{'firstname'} $borrower->{'surname'}";
          } else {
!             $overduetext = "Not on Issue.";
!           $borrowerinfo = $riborrowernumber{$_};
!       }
!       my ($iteminformation) = getiteminformation(\%env, 0, $barcode);;
!       $returneditemstable .= << "EOF";
! <tr><td bgcolor=$color>$overduetext</td>
! <td bgcolor=$color align=center>
! <a 
href=/cgi-bin/koha/detail.pl?bib=$iteminformation->{'biblionumber'}&type=intra 
onClick=\"openWindow(this, 'Item', 480, 640)\">$barcode</a></td>
! <td bgcolor=$color>$iteminformation->{'title'}</td>
! <td bgcolor=$color>$iteminformation->{'author'}</td>
! <td bgcolor=$color align=center>$iteminformation->{'itemtype'}</td>
! <td bgcolor=$color>
! $borrowerinfo</td></tr>
! EOF
!     } else {
!       last;
      }
      $count++;
  }
! $returneditemstable .= "</table>\n";
  
  
  # actually print the page!
! print $query->header();
! print startpage();
! print startmenu('circulation');
! 
! 
! #debug
! #    foreach my $key (keys %$messages) {
! #     print "$key : $messages->{$key}<br>";
! #    }
! 
! 
! print <<"EOF";
! $links
! $title
! 
! 
! <table cellpadding=5 cellspacing=0 width=100%>
! EOF
! 
! if ($reservefoundtext) {
!     print <<"EOF";
! <tr>
! <td colspan=2>$reservefoundtext</td>
! </tr>
! <tr>
! <td colspan=2>$messagetable</td>
! </tr>
! 
! EOF
! } else {
!     print <<"EOF";
! <tr>
! <td valign=top align=left>$barcodeentrytext</td>
! <td valign=top align=left>$messagetable</td>
! </tr>
! EOF
! }
! if ($returned) {
!     print <<"EOF";
! <tr>
! <td valign=top align=left>$itemtable</td>
! <td valign=top align=left>$borrowertable</td>
! <tr>
! EOF
! }
! if (%returneditems) {
!     print "<tr><td colspan=2>$returneditemstable</td></tr>";
! }
! 
! print "</table>";
! 
! print endmenu('circulation');
! print endpage();
  
  sub cuecatbarcodedecode {
--- 189,379 ----
      my ($borr) = getpatroninformation(\%env, $res->{'borrowernumber'}, 0);
      my $name = $borr->{'surname'}." ".$borr->{'title'}." 
".$borr->{'firstname'};
      my ($iteminfo) = getiteminformation(\%env, 0, $barcode);
  
      if ($res->{'ResFound'} eq "Waiting") {
!               $template->param(       found => 1,
!                                                                               
name => $name,
!                                                                               
bornum => $res->{'borrowernumber'},
!                                                                               
borcnum => $borr->{'cardnumber'},
!                                                                               
branchname => $branches->{$res->{'branchcode'}}->{'branchname'},
!                                                                               
waiting => 1,
!                                                                               
itemtitle => $iteminfo->{'title'},
!                                                                               
itemauthor => $iteminfo->{'author'});
! 
!     }
!       if ($res->{'ResFound'} eq "Reserved") {
!               my @da = localtime(time());
!               my $todaysdate = sprintf ("%0.2d", ($da[3]+1))."/".sprintf 
("%0.2d", ($da[4]+1))."/".($da[5]+1900);
!               $template->param(       found => 1,
!                                                                               
branchname => $branches->{$res->{'branchcode'}}->{'branchname'},
!                                                                               
reserved => 1,
!                                                                               
today => $todaysdate,
!                                                                               
itemnum => $res->{'itemnumber'},
!                                                                               
itemtitle => $iteminfo->{'title'},
!                                                                               
itemauthor => $iteminfo->{'author'},
!                                                                               
itembarcode => $iteminfo->{'barcode'},
!                                                                               
itemtype => $iteminfo->{'itemtype'},
!                                                                               
itembiblionumber => $iteminfo->{'biblionumber'},
!                                                                               
borsurname => $borr->{'surname'},
!                                                                               
bortitle => $borr->{'title'},
!                                                                               
borfirstname => $borr->{'firstname'},
!                                                                               
bornum => $res->{'borrowernumber'},
!                                                                               
borcnum => $borr->{'cardnumber'},
!                                                                               
borphone => $borr->{'phone'},
!                                                                               
borstraddress => $borr->{'streetaddress'},
!                                                                               
borsub => $borr->{'suburb'},
!                                                                               
bortown => $borr->{'town'},
!                                                                               
boremail => $borr->{'emailadress'},
!                                                                               
barcode => $barcode
!                                                                               
);
      }
  }
  
! # Error Messages
! my @errmsgloop;
  foreach my $code (keys %$messages) {
  #    warn $code;
+       my %err;
      if ($code eq 'BadBarcode'){
!               $err{badbarcode}=1;
!               $err{msg}= $messages->{'BadBarcode'};
      }
      if ($code eq 'NotIssued'){
!               $err{notissued}=1;
!               $err{msg}= 
$branches->{$messages->{'IsPermanent'}}->{'branchname'};
      }
      if ($code eq 'WasLost'){
!               $err{waslost}=1;
      }
      if ($code eq 'wthdrawn'){
!               $err{withdrawn}=1;
        last;
      }
      if (($code eq 'IsPermanent') && (not $messages->{'ResFound'})) {
!               if ($messages->{'IsPermanent'} ne $branch) {
!                               $err{ispermanent}=1;
!                               
$err{msg}=$branches->{$messages->{'IsPermanent'}}->{'branchname'} ;
!               }
      }
+       push (@errmsgloop, \%err);
  }
! $template->param(errmsgloop => address@hidden);
  
  # patrontable ....
  if ($borrower) {
      my $flags = $borrower->{'flags'};
      my $color = '';
+       my @flagloop;
+       my $flagset;
      foreach my $flag (sort keys %$flags) {
!               my %flaginfo;
!               ($color eq $linecolor1) ? ($color=$linecolor2) : 
($color=$linecolor1);
!               unless($flagset) { $flagset=1; }
!               $flaginfo{color}=$color;
!               $flaginfo{redfont} =($flags->{$flag}->{'noissues'});
!               $flaginfo{flag}=$flag;
!               if ($flag eq 'CHARGES') {
!                       $flaginfo{msg}=$flag;
!                       $flaginfo{charges}=1;
!               } elsif ($flag eq 'WAITING') {
!                       $flaginfo{msg}=$flag;
!                       $flaginfo{waiting}=1;
!                       my @waitingitemloop;
!                       my $items = $flags->{$flag}->{'itemlist'};
!                       foreach my $item (@$items) {
!                               my ($iteminformation) = 
getiteminformation(\%env, $item->{'itemnumber'}, 0);
!                               my %waitingitem;
!                               
$waitingitem{biblionum}=$iteminformation->{'biblionumber'};
!                               
$waitingitem{barcode}=$iteminformation->{'barcode'};
!                               $waitingitem{title}=$iteminformation->{'title'};
!                               
$waitingitem{brname}=$branches->{$iteminformation->{'holdingbranch'}}->{'branchname'};
!                               push(@waitingitemloop, \%waitingitem);
!                       }
!                       address@hidden;
!               } elsif ($flag eq 'ODUES') {
!                       my $items = $flags->{$flag}->{'itemlist'};
!                       my @itemloop;
!                       foreach my $item (sort {$a->{'date_due'} cmp 
$b->{'date_due'}} @$items) {
!                               my ($iteminformation) = 
getiteminformation(\%env, $item->{'itemnumber'}, 0);
!                               my %overdueitem;
!                               $overdueitem{duedate}=$item->{'date_due'};
!                               
$overdueitem{biblionum}=$iteminformation->{'biblionumber'};
!                               
$overdueitem{barcode}=$iteminformation->{'barcode'};
!                               $overdueitem{title}=$iteminformation->{'title'};
!                               
$overdueitem{brname}=$branches->{$iteminformation->{'holdingbranch'}}->{'branchname'};
!                               push(@itemloop, \%overdueitem);
!                       }
!                       address@hidden;
!                       $flaginfo{overdue}=1;
!                       } else {
!                       $flaginfo{other}=1;
!                       $flaginfo{msg}=$flags->{$flag}->{'message'};
!               }
!               push(@flagloop, \%flaginfo);
!     }
!       $template->param(       flagset => $flagset,
!                                                                       
flagloop => address@hidden,
!                                                                       
ribornum => $borrower->{'borrowernumber'},
!                                                                       
riborcnum => $borrower->{'cardnumber'},
!                                                                       
riborsurname => $borrower->{'surname'},
!                                                                       
ribortitle => $borrower->{'title'},
!                                                                       
riborfirstname => $borrower->{'firstname'}
!                                                                       );
  }
  
  my $color='';
  #set up so only the lat 8 returned items display (make for faster loading 
pages)
  my $count=0;
+ my @riloop;
  foreach (sort {$a <=> $b} keys %returneditems) {
+       my %ri;
      if ($count < 8) {
!               ($color eq $linecolor1) ? ($color=$linecolor2) : 
($color=$linecolor1);
!               $ri{color}=$color;
!               my $barcode = $returneditems{$_};
!               my $duedate = $riduedate{$_};
!               my $overduetext;
          my $borrowerinfo;
!               if ($duedate) {
!               my @tempdate = split ( /-/ , $duedate ) ;
              my $duedatenz = "$tempdate[2]/$tempdate[1]/$tempdate[0]";
              my @datearr = localtime(time());
!             my $todaysdate = $datearr[5].'-'.sprintf ("%0.2d", 
($datearr[4]+1)).'-'.sprintf ("%0.2d", $datearr[3]);
!               my ($borrower) = getpatroninformation(\%env, 
$riborrowernumber{$_}, 0);
!                       $ri{bornum}=$borrower->{'borrowernumber'};
!                       $ri{borcnum}=$borrower->{'cardnumber'};
!                       $ri{borfirstname}=$borrower->{'firstname'};
!                       $ri{borsurname}=$borrower->{'surname'};
!                       $ri{bortitle}=$borrower->{'title'};
          } else {
!                       $ri{bornum}=$riborrowernumber{$_};
!               }
!               my %ri;
!               my ($iteminformation) = getiteminformation(\%env, 0, $barcode);
!               $ri{color}=$color;
!               $ri{itembiblionumber}=$iteminformation->{'biblionumber'};
!               $ri{itemtitle}=$iteminformation->{'title'};
!               $ri{itemauthor}=$iteminformation->{'author'};
!               $ri{itemtype}=$iteminformation->{'itemtype'};
!               $ri{barcode}=$barcode;
!       } else {
!               last;
      }
      $count++;
+       push(@riloop,\%ri);
  }
! $template->param(riloop => address@hidden);
  
+ $template->param(     genbrname => $genbrname,
+                                                               genprname => 
$genprname,
+                                                               branch => 
$branch,
+                                                               printer => 
$printer,
+                                                               hdrbckgdcolor 
=> $headerbackgroundcolor,
+                                                               bckgdimg => 
$backgroundimage,
+                                                               errmsgloop => 
address@hidden
+                                                       );
  
  # actually print the page!
! print $query->header(), $template->output;
  
  sub cuecatbarcodedecode {




reply via email to

[Prev in Thread] Current Thread [Next in Thread]