Let templating system do what its designed for
pass an array ref with the suppliers
---
 .../prog/en/modules/serials/claims.tmpl            |    7 ++++-
 serials/claims.pl                                  |   30 ++++++++-----------
 2 files changed, 19 insertions(+), 18 deletions(-)

diff --git a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/claims.tmpl 
b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/claims.tmpl
index dc482a4..15e059d 100644
--- a/koha-tmpl/intranet-tmpl/prog/en/modules/serials/claims.tmpl
+++ b/koha-tmpl/intranet-tmpl/prog/en/modules/serials/claims.tmpl
@@ -166,7 +166,12 @@
 <!-- TMPL_UNLESS NAME="letter" --><div class="dialog alert">No claims notice 
defined. <a href="/cgi-bin/koha/tools/letter.pl">Please define 
one</a>.</div><!-- /TMPL_UNLESS -->
     <form id="claims" name="claims" action="claims.pl" method="post">
     <fieldset><label for="supplierid">View: </label>
-        <!-- TMPL_VAR name="CGIsupplier" -->
+        <select id="supplierid" size="1" name="supplierid">
+        <!-- TMPL_LOOP name="supplier_loop" -->
+            <option value="<!--TMPL_VAR name="id"-->" <!-- TMPL_IF 
NAME="selected" -->selected="1"<!-- /TMPL_IF -->>
+                 <!--TMPL_VAR name="name"--></option>
+        <!--/TMPL_LOOP-->
+        </select>
         <input type="submit" value="OK" />
         <!-- TMPL_IF name="phone" -->Phone: <!-- TMPL_VAR name="phone" --><!-- 
/TMPL_IF -->
         <!-- TMPL_IF name="booksellerfax" -->Fax: <!-- TMPL_VAR 
name="booksellerfax" --><!-- /TMPL_IF -->
diff --git a/serials/claims.pl b/serials/claims.pl
index 6d9f172..d6a7ce7 100755
--- a/serials/claims.pl
+++ b/serials/claims.pl
@@ -18,7 +18,7 @@ my $claimletter = $input->param('claimletter');
 my $supplierid = $input->param('supplierid');
 my $suppliername = $input->param('suppliername');
 my $order = $input->param('order');
-my %supplierlist = GetSuppliersWithLateIssues;
+my %supplierlist = GetSuppliersWithLateIssues();
 my @select_supplier;
 
 # open template first (security & userenv set here)
@@ -30,15 +30,19 @@ my ($template, $loggedinuser, $cookie)
             flagsrequired => {serials => 1},
             debug => 1,
             });
-foreach my $supplierid (sort {$supplierlist{$a} cmp $supplierlist{$b} } keys 
%supplierlist){
-        my ($count, @dummy) = GetLateOrMissingIssues($supplierid,"",$order);
-        my $counting = $count;
-        $supplierlist{$supplierid} = $supplierlist{$supplierid}." ($counting)";
-       push @select_supplier, $supplierid
+my $supplier_loop = [];
+foreach my $s_id (sort {$supplierlist{$a} cmp $supplierlist{$b} } keys 
%supplierlist){
+        my ($count) = GetLateOrMissingIssues($supplierid,q{},$order);
+        push @{$supplier_loop}, {
+            id   => $s_id,
+            name => $supplierlist{$s_id} . "($count)",
+            selected => ( $supplierid && $supplierid == $s_id ),
+        };
 }
-my $letters = GetLetters("claimissues");
+
+my $letters = GetLetters('claimissues');
 my @letters;
-foreach (keys %$letters){
+foreach (keys %{$letters}){
     push @letters ,{code=>$_,name=> $letters->{$_}};
 }
 
@@ -48,14 +52,6 @@ if ($supplierid) {
     ($count2, @missingissues) = 
GetLateOrMissingIssues($supplierid,$serialid,$order);
 }
 
-my $CGIsupplier=CGI::scrolling_list( -name     => 'supplierid',
-                       -id        => 'supplierid',
-                       -values   => \...@select_supplier,
-                       -default  => $supplierid,
-                       -labels   => \%supplierlist,
-                       -size     => 1,
-                       -multiple => 0 );
-
 my ($singlesupplier,@supplierinfo);
 if($supplierid){
    (@supplierinfo)=GetBookSeller($supplierid);
@@ -81,7 +77,7 @@ if ($op eq "send_alert"){
 $template->param('letters'=>\...@letters,'letter'=>$letter);
 $template->param(
         order =>$order,
-        CGIsupplier => $CGIsupplier,
+        supplier_loop => $supplier_loop,
         phone => $supplierinfo[0]->{phone},
         booksellerfax => $supplierinfo[0]->{booksellerfax},
         bookselleremail => $supplierinfo[0]->{bookselleremail},
-- 
1.6.5.2

_______________________________________________
Koha-patches mailing list
[email protected]
http://lists.koha.org/mailman/listinfo/koha-patches

Reply via email to