From a392b0d10954b39e7cf8da0fde81843554773c7a Mon Sep 17 00:00:00 2001 From: toins Date: Wed, 12 Jul 2006 16:47:15 +0000 Subject: [PATCH] Pod added, SQL code move on Serials.pm --- serials/distributedto.pl | 113 ++++++++++++++++++++------------------- 1 file changed, 58 insertions(+), 55 deletions(-) diff --git a/serials/distributedto.pl b/serials/distributedto.pl index df8e8e6ed7..d266ac8a22 100755 --- a/serials/distributedto.pl +++ b/serials/distributedto.pl @@ -17,6 +17,36 @@ # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, # Suite 330, Boston, MA 02111-1307 USA +# $Id$ + +=head1 NAME + +distributedto + +=head1 DESCRIPTION + +this script is launched as a popup. It allows to choose for who the subscription can be distributed. + +=head1 PARAMETERS + +=over 4 + +=item searchfield +to filter on the members. + +=item distributedto +to know if there are already some members to in the distributed list + +=item subscriptionid +to know what subscription this scrpit have to distribute. + +=item SaveList + +=back + +=cut + + use strict; use CGI; use C4::Date; @@ -26,24 +56,8 @@ use C4::Output; use C4::Interface::CGI::Output; use C4::Search; use HTML::Template; - -sub StringSearch { - my ($searchstring)=@_; - my $dbh = C4::Context->dbh; - $searchstring=~ s/\'/\\\'/g; - my @data=split(' ',$searchstring); - my $count=@data; - my $sth=$dbh->prepare("Select surname,firstname from borrowers where (surname like ?) order by surname"); - $sth->execute("$data[0]%"); - my @results; - my $cnt=0; - while (my $data=$sth->fetchrow_hashref){ - push(@results,$data); - $cnt ++; - } - $sth->finish; - return($cnt,\@results); -} +use C4::Serials; +use C4::Members; my $input = new CGI; my $searchfield=$input->param('searchfield'); @@ -54,49 +68,38 @@ $searchfield=~ s/\,//g; my $SaveList=$input->param('SaveList'); my $dbh = C4::Context->dbh; -unless ($distributedto) { - # read the previous distributedto - my $sth = $dbh->prepare('select distributedto from subscription where subscriptionid=?'); - $sth->execute($subscriptionid); - ($distributedto) = $sth->fetchrow; -} +$distributedto = GetDistributedTo($subscriptionid) unless $distributedto; + +SetDistributedto($distributedto,$subscriptionid) if ($SaveList) ; -if ($SaveList) { - my $sth = $dbh->prepare("update subscription set distributedto=? where subscriptionid=?"); - $sth->execute($distributedto,$subscriptionid); -} my ($template, $borrowernumber, $cookie) = get_template_and_user({template_name => "serials/distributedto.tmpl", - query => $input, - type => "intranet", - authnotrequired => 0, - flagsrequired => {cataloguing => 1}, - debug => 1, - }); - -my $env; -my $count=0; -my $results; -($count,$results)=StringSearch($searchfield) if $searchfield; + query => $input, + type => "intranet", + authnotrequired => 0, + flagsrequired => {cataloguing => 1}, + debug => 1, + }); + +my ($count,$results)=GetBorrowersFromSurname($searchfield) if $searchfield; my $toggle="0"; my @loop_data =(); for (my $i=0; $i < $count; $i++){ - if ($i % 2){ - $toggle=1; - } else { - $toggle=0; - } - my %row_data; - $row_data{toggle} = $toggle; - $row_data{firstname} = $results->[$i]{'firstname'}; - $row_data{surname} = $results->[$i]{'surname'}; - push(@loop_data, \%row_data); + if ($i % 2){ + $toggle=1; + } else { + $toggle=0; + } + my %row_data; + $row_data{toggle} = $toggle; + $row_data{firstname} = $results->[$i]{'firstname'}; + $row_data{surname} = $results->[$i]{'surname'}; + push(@loop_data, \%row_data); } $template->param(borlist => \@loop_data, - searchfield => $searchfield, - distributedto => $distributedto, - SaveList => $SaveList, - subscriptionid => $subscriptionid, - ); + searchfield => $searchfield, + distributedto => $distributedto, + SaveList => $SaveList, + subscriptionid => $subscriptionid, + ); output_html_with_http_headers $input, $cookie, $template->output; - -- 2.39.5