[Koha-patches] [PATCH] Enable warnings in serial scripts
Colin Campbell
colin.campbell at ptfs-europe.com
Mon Sep 7 14:03:10 CEST 2009
Remove some superfluous variables
Simplify some loops over lists
Fix generated warnings
Strip whitespace from line endings
---
serials/acqui-search-result.pl | 45 ++++++++++++++++++-----------------
serials/acqui-search.pl | 28 +++++++++++-----------
serials/checkexpiration.pl | 1 +
serials/claims.pl | 12 ++++++---
serials/lateissues-excel.pl | 21 +++++++---------
serials/member-search.pl | 3 +-
serials/routing-preview.pl | 20 ++++++++--------
serials/routing.pl | 29 ++++++++++++++++------
serials/serial-issues.pl | 6 ++--
serials/serials-collection.pl | 12 +++++----
serials/serials-edit.pl | 41 +++++++++++++++++---------------
serials/serials-home.pl | 21 ++++++++--------
serials/subscription-add.pl | 26 ++++++++++----------
serials/subscription-bib-search.pl | 9 ++++---
serials/subscription-detail.pl | 43 ++++++++++++++++++++-------------
serials/subscription-renew.pl | 12 +++------
16 files changed, 178 insertions(+), 151 deletions(-)
diff --git a/serials/acqui-search-result.pl b/serials/acqui-search-result.pl
index 4f410bd..df73738 100755
--- a/serials/acqui-search-result.pl
+++ b/serials/acqui-search-result.pl
@@ -40,6 +40,7 @@ acqui-search-result.pl
use strict;
+use warnings;
use C4::Auth;
use C4::Biblio;
use C4::Output;
@@ -60,33 +61,33 @@ my ($template, $loggedinuser, $cookie)
my $supplier=$query->param('supplier');
my @suppliers = GetBookSeller($supplier);
-my $count = scalar @suppliers;
+#my $count = scalar @suppliers;
#build result page
-my @loop_suppliers;
-for (my $i=0; $i<$count; $i++) {
- my $orders = GetPendingOrders($suppliers[$i]->{'id'});
- my $ordcount = scalar @$orders;
+my $loop_suppliers = [];
+for my $s (@suppliers) {
+ my $orders = GetPendingOrders($s->{'id'});
- my %line;
- $line{aqbooksellerid} =$suppliers[$i]->{'id'};
- $line{name} = $suppliers[$i]->{'name'};
- $line{active} = $suppliers[$i]->{'active'};
- my @loop_basket;
- for (my $i2=0;$i2<$ordcount;$i2++){
- my %inner_line;
- $inner_line{basketno} =$orders->[$i2]->{'basketno'};
- $inner_line{total} =$orders->[$i2]->{'count(*)'};
- $inner_line{authorisedby} = $orders->[$i2]->{'authorisedby'};
- $inner_line{creationdate} = format_date($orders->[$i2]->{'creationdate'});
- $inner_line{closedate} = format_date($orders->[$i2]->{'closedate'});
- push @loop_basket, \%inner_line;
+ my $loop_basket = [];
+ for my $ord ( @{$orders} ) {
+ push @{$loop_basket}, {
+ basketno => $ord->{'basketno'},
+ total => $ord->{'count(*)'},
+ authorisedby => $ord->{'authorisedby'},
+ creationdate => format_date($ord->{'creationdate'}),
+ closedate => format_date($ord->{'closedate'}),
+ };
}
- $line{loop_basket} = \@loop_basket;
- push @loop_suppliers, \%line;
+ push @{$loop_suppliers}, {
+ loop_basket => $loop_basket,
+ aqbooksellerid => $s->{'id'},
+ name => $s->{'name'},
+ active => $s->{'active'},
+ };
}
-$template->param(loop_suppliers => \@loop_suppliers,
+
+$template->param(loop_suppliers => $loop_suppliers,
supplier => $supplier,
- count => $count);
+ count => scalar @suppliers);
output_html_with_http_headers $query, $cookie, $template->output;
diff --git a/serials/acqui-search.pl b/serials/acqui-search.pl
index 7461a8a..408ac83 100755
--- a/serials/acqui-search.pl
+++ b/serials/acqui-search.pl
@@ -19,6 +19,7 @@
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Output;
@@ -53,18 +54,18 @@ my $totspent = 0;
my $totcomtd = 0;
my $totavail = 0;
my @loop_budget = ();
-for ( my $i = 0 ; $i < $count ; $i++ ) {
+for my $r (@results) {
my ( $spent, $comtd ) =
- GetBookFundBreakdown( $results[$i]->{'bookfundid'} );
- my $avail = $results[$i]->{'budgetamount'} - ( $spent + $comtd );
+ GetBookFundBreakdown( $r->{'bookfundid'} );
+ my $avail = $r->{'budgetamount'} - ( $spent + $comtd );
my %line;
- $line{bookfundname} = $results[$i]->{'bookfundname'};
- $line{budgetamount} = $results[$i]->{'budgetamount'};
+ $line{bookfundname} = $r->{'bookfundname'};
+ $line{budgetamount} = $r->{'budgetamount'};
$line{spent} = sprintf( "%.2f", $spent );
$line{comtd} = sprintf( "%.2f", $comtd );
$line{avail} = sprintf( "%.2f", $avail );
push @loop_budget, \%line;
- $total += $results[$i]->{'budgetamount'};
+ $total += $r->{'budgetamount'};
$totspent += $spent;
$totcomtd += $comtd;
$totavail += $avail;
@@ -72,20 +73,19 @@ for ( my $i = 0 ; $i < $count ; $i++ ) {
#currencies
my @rates = GetCurrencies();
-$count = scalar @rates;
-my @loop_currency = ();
-for ( my $i = 0 ; $i < $count ; $i++ ) {
- my %line;
- $line{currency} = $rates[$i]->{'currency'};
- $line{rate} = $rates[$i]->{'rate'};
- push @loop_currency, \%line;
+my $loop_currency = [];
+for my $r (@rates) {
+ push @{$loop_currency}, {
+ currency => $r->{'currency'},
+ rate => $r->{'rate'},
+ };
}
$template->param(
classlist => $classlist,
type => 'intranet',
loop_budget => \@loop_budget,
- loop_currency => \@loop_currency,
+ loop_currency => $loop_currency,
total => sprintf( "%.2f", $total ),
totspent => sprintf( "%.2f", $totspent ),
totcomtd => sprintf( "%.2f", $totcomtd ),
diff --git a/serials/checkexpiration.pl b/serials/checkexpiration.pl
index 5461aa6..865e163 100755
--- a/serials/checkexpiration.pl
+++ b/serials/checkexpiration.pl
@@ -43,6 +43,7 @@ The date to filter on.
=cut
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Serials; # GetExpirationDate
diff --git a/serials/claims.pl b/serials/claims.pl
index 8fcea93..cbb6fd6 100755
--- a/serials/claims.pl
+++ b/serials/claims.pl
@@ -1,6 +1,7 @@
#!/usr/bin/perl
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Serials;
@@ -44,7 +45,10 @@ foreach (keys %$letters){
}
my $letter=((scalar(@letters)>1) || ($letters[0]->{name}||$letters[0]->{code}));
-my ($count2, @missingissues) = GetLateOrMissingIssues($supplierid,$serialid,$order) if $supplierid;
+my ($count2, @missingissues);
+if ($supplierid) {
+ ($count2, @missingissues) = GetLateOrMissingIssues($supplierid,$serialid,$order);
+}
my $CGIsupplier=CGI::scrolling_list( -name => 'supplierid',
-id => 'supplierid',
@@ -58,13 +62,13 @@ my ($singlesupplier, at supplierinfo);
if($supplierid){
(@supplierinfo)=GetBookSeller($supplierid);
} else { # set up supplierid for the claim links out of main table if all suppliers is chosen
- for(my $i=0; $i<@missingissues;$i++){
- $missingissues[$i]->{'supplierid'} = getsupplierbyserialid($missingissues[$i]->{'serialid'});
+ for my $mi (@missingissues){
+ $mi->{supplierid} = getsupplierbyserialid($mi->{serialid});
}
}
my $preview=0;
-if($op eq 'preview'){
+if($op && $op eq 'preview'){
$preview = 1;
} else {
my @serialnums=$input->param('serialid');
diff --git a/serials/lateissues-excel.pl b/serials/lateissues-excel.pl
index 7433a67..6110bcd 100755
--- a/serials/lateissues-excel.pl
+++ b/serials/lateissues-excel.pl
@@ -1,6 +1,7 @@
#!/usr/bin/perl
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Serials;
@@ -28,7 +29,7 @@ my $csv = Text::CSV_XS->new(
my $query = new CGI;
my $supplierid = $query->param('supplierid');
my @serialid = $query->param('serialid');
-my $op = $query->param('op');
+my $op = $query->param('op') || q{};
my $serialidcount = @serialid;
my %supplierlist = GetSuppliersWithLateIssues;
@@ -38,13 +39,9 @@ my @loop1;
my ($count, @lateissues);
if($op ne 'claims'){
($count, @lateissues) = GetLateIssues($supplierid);
- for (my $i=0;$i<@lateissues;$i++){
- my @rows1 = ($lateissues[$i]->{'name'}, # lets build up a row
- $lateissues[$i]->{'title'},
- $lateissues[$i]->{'serialseq'},
- $lateissues[$i]->{'planneddate'},
- );
- push (@loop1, \@rows1);
+ for my $issue (@lateissues){
+ push @loop1,
+ [ $issue->{'name'}, $issue->{'title'}, $issue->{'serialseq'}, $issue->{'planneddate'},];
}
}
my $totalcount2 = 0;
@@ -55,7 +52,7 @@ for (my $k=0;$k<@serialid;$k++){
for (my $j=0;$j<@missingissues;$j++){
my @rows2 = ($missingissues[$j]->{'name'}, # lets build up a row
- $missingissues[$j]->{'title'},
+ $missingissues[$j]->{'title'},
$missingissues[$j]->{'serialseq'},
$missingissues[$j]->{'planneddate'},
);
@@ -72,7 +69,7 @@ if($supplierid){
if($missingissues[0]->{'name'}){ # if exists display supplier name in heading for neatness
# not necessarily needed as the name will appear in supplier column also
$heading = "FOR $missingissues[0]->{'name'}";
- $filename = "_$missingissues[0]->{'name'}";
+ $filename = "_$missingissues[0]->{'name'}";
}
}
@@ -86,7 +83,7 @@ if($op ne 'claims'){
print "SUPPLIER,TITLE,ISSUE NUMBER,LATE SINCE\n";
for my $row ( @loop1 ) {
-
+
$csv->combine(@$row);
my $string = $csv->string;
print $string, "\n";
@@ -102,7 +99,7 @@ if($serialidcount == 1){
print "SUPPLIER,TITLE,ISSUE NUMBER,LATE SINCE\n";
for my $row ( @loop2 ) {
-
+
$csv->combine(@$row);
my $string = $csv->string;
print $string, "\n";
diff --git a/serials/member-search.pl b/serials/member-search.pl
index fbb9a6f..a2063f8 100755
--- a/serials/member-search.pl
+++ b/serials/member-search.pl
@@ -18,10 +18,11 @@
=head1 member-search.pl
Member Search.pl script used to search for members to add to a routing list
-
+
=cut
use strict;
+use warnings;
use CGI;
use C4::Auth; # get_template_and_user
use C4::Output;
diff --git a/serials/routing-preview.pl b/serials/routing-preview.pl
index 9cac0aa..8e9add2 100755
--- a/serials/routing-preview.pl
+++ b/serials/routing-preview.pl
@@ -4,6 +4,7 @@
# lets one print out routing slip and create (in this instance) the heirarchy
# of reserves for the serial
use strict;
+use warnings;
use CGI;
use C4::Koha;
use C4::Auth;
@@ -31,14 +32,14 @@ my $dbh = C4::Context->dbh;
if($delete){
delroutingmember($routingid,$subscriptionid);
my $sth = $dbh->prepare("UPDATE serial SET routingnotes = NULL WHERE subscriptionid = ?");
- $sth->execute($subscriptionid);
- print $query->redirect("routing.pl?subscriptionid=$subscriptionid&op=new");
+ $sth->execute($subscriptionid);
+ print $query->redirect("routing.pl?subscriptionid=$subscriptionid&op=new");
}
if($edit){
print $query->redirect("routing.pl?subscriptionid=$subscriptionid");
}
-
+
my ($routing, @routinglist) = getroutinglist($subscriptionid);
my $subs = GetSubscription($subscriptionid);
my ($count, at serials) = GetSerials($subscriptionid);
@@ -47,7 +48,7 @@ my ($template, $loggedinuser, $cookie);
if($ok){
# get biblio information....
my $biblio = $subs->{'biblionumber'};
-
+
# get existing reserves .....
my ($count,$reserves) = GetReservesFromBiblionumber($biblio);
my $totalcount = $count;
@@ -74,8 +75,8 @@ if($ok){
AddReserve($branch,$routinglist[$i]->{'borrowernumber'},$biblio,$const,\@bibitems,$routinglist[$i]->{'ranking'},'',$notes,$title);
}
}
-
-
+
+
($template, $loggedinuser, $cookie)
= get_template_and_user({template_name => "serials/routing-preview-slip.tmpl",
query => $query,
@@ -94,9 +95,8 @@ if($ok){
flagsrequired => {serials => 1},
debug => 1,
});
-}
+}
-# my $firstdate = "$serials[0]->{'serialseq'} ($serials[0]->{'planneddate'})";
my @results;
my $data;
for(my $i=0;$i<$routing;$i++){
@@ -110,13 +110,13 @@ for(my $i=0;$i<$routing;$i++){
my $routingnotes = $serials[0]->{'routingnotes'};
$routingnotes =~ s/\n/\<br \/\>/g;
-
+
$template->param(
title => $subs->{'bibliotitle'},
issue => $issue,
issue_escaped => URI::Escape::uri_escape($issue),
subscriptionid => $subscriptionid,
- memberloop => \@results,
+ memberloop => \@results,
routingnotes => $routingnotes,
);
diff --git a/serials/routing.pl b/serials/routing.pl
index 11fcf6c..d49d450 100755
--- a/serials/routing.pl
+++ b/serials/routing.pl
@@ -26,6 +26,7 @@ printed out
=cut
use strict;
+use warnings;
use CGI;
use C4::Koha;
use C4::Auth;
@@ -46,7 +47,7 @@ my $serialseq = $query->param('serialseq');
my $routingid = $query->param('routingid');
my $borrowernumber = $query->param('borrowernumber');
my $notes = $query->param('notes');
-my $op = $query->param('op');
+my $op = $query->param('op') || q{};
my $date_selected = $query->param('date_selected');
my $dbh = C4::Context->dbh;
@@ -63,7 +64,7 @@ if($op eq 'save'){
my $urldate = URI::Escape::uri_escape($date_selected);
print $query->redirect("routing-preview.pl?subscriptionid=$subscriptionid&issue=$urldate");
}
-
+
my ($routing, @routinglist) = getroutinglist($subscriptionid);
my $subs = GetSubscription($subscriptionid);
my ($count, at serials) = GetSerials($subscriptionid);
@@ -104,26 +105,38 @@ my ($template, $loggedinuser, $cookie)
# }
# my $issue = "$serialseq ($date)";
-
+
my @results;
my $data;
for(my $i=0;$i<$routing;$i++){
$data=GetMember($routinglist[$i]->{'borrowernumber'},'borrowernumber');
$data->{'location'}=$data->{'branchcode'};
- $data->{'name'}="$data->{'firstname'} $data->{'surname'}";
+ if ($data->{firstname} ) {
+ $data->{name} = $data->{firstname} . q| |;
+ }
+ else {
+ $data->{name} = q{};
+ }
+ if ($data->{surname} ) {
+ $data->{name} .= $data->{surname};
+ }
$data->{'routingid'}=$routinglist[$i]->{'routingid'};
$data->{'subscriptionid'}=$subscriptionid;
- my $rankingbox = '<select name="itemrank" onchange="reorder_item('.$subscriptionid.','.$routinglist[$i]->{'routingid'}.',this.options[this.selectedIndex].value)">';
+ if (! $routinglist[$i]->{routingid} ) {
+ $routinglist[$i]->{routingid} = q||;
+ }
+ my $rankingbox = '<select name="itemrank" onchange="reorder_item('
+ . $subscriptionid . ',' .$routinglist[$i]->{'routingid'} . ',this.options[this.selectedIndex].value)">';
for(my $j=1; $j <= $routing; $j++) {
$rankingbox .= "<option ";
- if($routinglist[$i]->{'ranking'} == $j){
+ if($routinglist[$i]->{ranking} && $routinglist[$i]->{ranking} == $j){
$rankingbox .= " selected=\"selected\"";
}
$rankingbox .= " value=\"$j\">$j</option>";
}
$rankingbox .= "</select>";
$data->{'routingbox'} = $rankingbox;
-
+
push(@results, $data);
}
@@ -139,7 +152,7 @@ if ($op eq 'new') {
$template->param(
title => $subs->{'bibliotitle'},
subscriptionid => $subscriptionid,
- memberloop => \@results,
+ memberloop => \@results,
op => $new,
dates => \@dates,
routingnotes => $serials[0]->{'routingnotes'},
diff --git a/serials/serial-issues.pl b/serials/serial-issues.pl
index 127d4c5..842876a 100755
--- a/serials/serial-issues.pl
+++ b/serials/serial-issues.pl
@@ -42,6 +42,7 @@ the biblionumber this script has to give more infos.
=cut
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Koha;
@@ -57,7 +58,6 @@ my $selectview = $query->param('selectview');
$selectview = C4::Context->preference("SubscriptionHistory") unless $selectview;
my $sth;
-# my $id;
my ($template, $loggedinuser, $cookie);
my $biblionumber = $query->param('biblionumber');
if ($selectview eq "full"){
@@ -75,10 +75,10 @@ if ($selectview eq "full"){
flagsrequired => {serials => 1},
debug => 1,
});
-
+
# replace CR by <br> in librarian note
# $subscription->{opacnote} =~ s/\n/\<br\/\>/g;
-
+
$template->param(
biblionumber => $query->param('biblionumber'),
years => $subscriptions,
diff --git a/serials/serials-collection.pl b/serials/serials-collection.pl
index baef9b9..c80886b 100755
--- a/serials/serials-collection.pl
+++ b/serials/serials-collection.pl
@@ -19,6 +19,7 @@
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Koha;
@@ -50,8 +51,9 @@ my @subscriptionid = $query->param('subscriptionid');
my $subscriptiondescs ;
my $subscriptions;
-if($op eq "gennext" && @subscriptionid){
- my $subscriptionid = @subscriptionid[0];
+$op ||= q{};
+if($op eq 'gennext' && @subscriptionid){
+ my $subscriptionid = $subscriptionid[0];
my $subscription = GetSubscription($subscriptionid);
my $sth = $dbh->prepare("SELECT publisheddate, serialid, serialseq, planneddate
@@ -69,13 +71,13 @@ if($op eq "gennext" && @subscriptionid){
$newserialseq, $newlastvalue1, $newlastvalue2, $newlastvalue3,
$newinnerloop1, $newinnerloop2, $newinnerloop3
) = GetNextSeq($subscription);
-
+
## We generate the next publication date
my $nextpublisheddate = GetNextDate( $expected->{planneddate}->output('iso'), $subscription );
## Creating the new issue
NewIssue( $newserialseq, $subscriptionid, $subscription->{'biblionumber'},
1, $nextpublisheddate, $nextpublisheddate );
-
+
## Updating the subscription seq status
my $squery = "UPDATE subscription SET lastvalue1=?, lastvalue2=?, lastvalue3=?, innerloop1=?, innerloop2=?, innerloop3=?
WHERE subscriptionid = ?";
@@ -103,7 +105,7 @@ if (@subscriptionid){
$subs->{ "status" . $subs->{'status'} } = 1;
$subs->{startdate} = format_date( $subs->{startdate} );
$subs->{histstartdate} = format_date( $subs->{histstartdate} );
- if ( $subs->{enddate} eq '0000-00-00' ) {
+ if ( !defined $subs->{enddate} || $subs->{enddate} eq '0000-00-00' ) {
$subs->{enddate} = '';
}
else {
diff --git a/serials/serials-edit.pl b/serials/serials-edit.pl
index 9994e44..08eae33 100755
--- a/serials/serials-edit.pl
+++ b/serials/serials-edit.pl
@@ -28,7 +28,7 @@ serials-recieve.pl
=item op
op can be :
- * modsubscriptionhistory :to modify the subscription history
+ * modsubscriptionhistory :to modify the subscription history
* serialchangestatus :to modify the status of this subscription
=item subscriptionid
@@ -63,6 +63,7 @@ op can be :
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Dates qw/format_date format_date_in_iso/;
@@ -90,7 +91,6 @@ if (scalar(@subscriptionids)==1 && index($subscriptionids[0],",")>0){
}
my @errors;
my @errseq;
-my $redirectstring;
# If user comes from subscription details
unless (@serialids){
foreach my $subscriptionid (@subscriptionids){
@@ -107,7 +107,7 @@ unless (@serialids){
unless (scalar(@serialids)){
my $string="serials-collection.pl?subscriptionid=".join(",", at subscriptionids);
$string=~s/,$//;
-# warn $string;
+# warn $string;
print $query->redirect($string);
}
my ($template, $loggedinuser, $cookie)
@@ -130,7 +130,7 @@ foreach my $tmpserialid (@serialids){
$data->{planneddate}=format_date($data->{planneddate});
$data->{'editdisable'}=((HasSubscriptionExpired($data->{subscriptionid})&& $data->{'status1'})||$data->{'cannotedit'});
push @serialdatalist,$data;
- $processedserialid{$tmpserialid}=1;
+ $processedserialid{$tmpserialid}=1;
}
my $bibdata=GetBiblioData($serialdatalist[0]->{'biblionumber'});
@@ -143,7 +143,7 @@ foreach my $subscriptionid (@subscriptionids){
next unless (defined($subscriptionid) && !$processedsubscriptionid{$subscriptionid});
my $cell;
if ($serialdatalist[0]->{'serialsadditems'}){
- #Create New empty item
+ #Create New empty item
$cell =
PrepareItemrecordDisplay( $serialdatalist[0]->{'biblionumber'},'', GetSubscription($subscriptionid));
$cell->{serialsadditems} = 1;
@@ -157,12 +157,12 @@ foreach my $subscriptionid (@subscriptionids){
'abouttoexpire'=>abouttoexpire($subscriptionid),
'subscriptionexpired'=>HasSubscriptionExpired($subscriptionid),
};
- $processedsubscriptionid{$subscriptionid}=1;
+ $processedsubscriptionid{$subscriptionid}=1;
}
$template->param(newserialloop=>\@newserialloop);
$template->param(subscriptions=>\@subscriptionloop);
-if ($op eq 'serialchangestatus') {
+if ($op and $op eq 'serialchangestatus') {
# my $sth = $dbh->prepare("select status from serial where serialid=?");
my $newserial;
for (my $i=0;$i<=$#serialids;$i++) {
@@ -247,15 +247,18 @@ if ($op eq 'serialchangestatus') {
}
}
# check for item barcode # being unique
- my $exists = GetItemnumberFromBarcode($record->subfield($barcodetagfield,$barcodetagsubfield)) if ($record->subfield($barcodetagfield,$barcodetagsubfield));
- # push @errors,"barcode_not_unique" if($exists);
+ my $exists;
+ if ($record->subfield($barcodetagfield,$barcodetagsubfield)) {
+ $exists = GetItemnumberFromBarcode($record->subfield($barcodetagfield,$barcodetagsubfield));
+ }
+ # push @errors,"barcode_not_unique" if($exists);
# if barcode exists, don't create, but report The problem.
- if ($exists){
- push @errors,"barcode_not_unique" if($exists);
- push @errseq,{"serialseq"=>$serialseqs[$index]};
+ if ($exists){
+ push @errors,"barcode_not_unique" if($exists);
+ push @errseq,{"serialseq"=>$serialseqs[$index]};
} else {
- my ($biblionumber,$bibitemnum,$itemnumber) = AddItemFromMarc($record,$itemhash{$item}->{'bibnum'});
- AddItem2Serial($itemhash{$item}->{'serial'},$itemnumber);
+ my ($biblionumber,$bibitemnum,$itemnumber) = AddItemFromMarc($record,$itemhash{$item}->{'bibnum'});
+ AddItem2Serial($itemhash{$item}->{'serial'},$itemnumber);
}
} else {
#modify item
@@ -264,7 +267,7 @@ if ($op eq 'serialchangestatus') {
}
}
}
-# ### FIXME this part of code is not very pretty. Nor is it very efficient... There MUST be a more perlish way to write it. But it works.
+# ### FIXME this part of code is not very pretty. Nor is it very efficient... There MUST be a more perlish way to write it. But it works.
# my $redirect ="serials-home.pl?";
# $redirect.=join("&",map{"serialseq=".$_} @serialseqs);
# $redirect.="&".join("&",map{"planneddate=".$_} @planneddates);
@@ -276,9 +279,9 @@ if ($op eq 'serialchangestatus') {
$template->param("Errors" => 1);
if (scalar(@errseq)>0){
$template->param("barcode_not_unique" => 1);
- $template->param('errseq'=>\@errseq);
- }
- } else {
+ $template->param('errseq'=>\@errseq);
+ }
+ } else {
my $redirect ="serials-collection.pl?";
my %hashsubscription;
foreach (@subscriptionids) {
@@ -286,7 +289,7 @@ if ($op eq 'serialchangestatus') {
}
$redirect.=join("&",map{"subscriptionid=".$_} sort keys %hashsubscription);
print $query->redirect("$redirect");
- }
+ }
}
$template->param(
diff --git a/serials/serials-home.pl b/serials/serials-home.pl
index 7b0c464..ec2ddee 100755
--- a/serials/serials-home.pl
+++ b/serials/serials-home.pl
@@ -41,6 +41,7 @@ this script is the main page for serials/
=cut
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Serials;
@@ -79,14 +80,14 @@ if (@serialseqs){
### FIXME This limitation that a serial must be given a title may not be very efficient for some library who do not update serials titles.
push @information,
{ serialseq=>$seq,
- publisheddate=>$publisheddates[$index],
- planneddate=>$planneddates[$index],
- notes=>$notes[$index],
+ publisheddate=>$publisheddates[$index],
+ planneddate=>$planneddates[$index],
+ notes=>$notes[$index],
status=>$status[$index]
- }
- }
- $index++;
- }
+ }
+ }
+ $index++;
+ }
$template->param('information'=>\@information);
}
my @subscriptions;
@@ -96,10 +97,8 @@ if ($searched){
# to toggle between create or edit routing list options
if ($routing) {
- for ( my $i = 0 ; $i < @subscriptions ; $i++ ) {
- my $checkrouting =
- check_routing( $subscriptions[$i]->{'subscriptionid'} );
- $subscriptions[$i]->{'routingedit'} = $checkrouting;
+ for my $subscription ( @subscriptions) {
+ $subscription->{routingedit} = check_routing( $subscription->{subscriptionid} );
}
}
diff --git a/serials/subscription-add.pl b/serials/subscription-add.pl
index e6f9e83..4fbf8c2 100755
--- a/serials/subscription-add.pl
+++ b/serials/subscription-add.pl
@@ -41,7 +41,7 @@ my ($subscriptionid,$auser,$branchcode,$librarian,$cost,$aqbooksellerid, $aqbook
$add1,$every1,$whenmorethan1,$setto1,$lastvalue1,$innerloop1,
$add2,$every2,$whenmorethan2,$setto2,$lastvalue2,$innerloop2,
$add3,$every3,$whenmorethan3,$setto3,$lastvalue3,$innerloop3,
- $numberingmethod, $status, $biblionumber,
+ $numberingmethod, $status, $biblionumber,
$bibliotitle, $callnumber, $notes, $hemisphere, $letter, $manualhistory,$serialsadditems, $location);
my @budgets;
@@ -59,7 +59,7 @@ my ($template, $loggedinuser, $cookie)
my $sub_on;
my @subscription_types = (
'issues', 'weeks', 'months'
- );
+ );
my @sub_type_data;
my $subs;
@@ -74,7 +74,7 @@ if ($op eq 'mod' || $op eq 'dup' || $op eq 'modsubscription') {
if ($subs->{'cannotedit'} && $op eq 'mod'){
warn "Attempt to modify subscription $subscriptionid by ".C4::Context->userenv->{'id'}." not allowed";
print $query->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid");
- }
+ }
$firstissuedate = $subs->{firstacquidate}; # in iso format.
for (qw(startdate firstacquidate histstartdate enddate histenddate)) {
next unless defined $subs->{$_};
@@ -82,7 +82,7 @@ if ($op eq 'mod' || $op eq 'dup' || $op eq 'modsubscription') {
if ($subs->{$_} eq '0000-00-00') {
$subs->{$_} = ''
} else {
- $subs->{$_} = format_date($subs->{$_});
+ $subs->{$_} = format_date($subs->{$_});
}
}
$subs->{'letter'}='' unless($subs->{'letter'});
@@ -100,7 +100,7 @@ if ($op eq 'mod' || $op eq 'dup' || $op eq 'modsubscription') {
last;
}
}
-
+
$template->param($subs);
$template->param("dow".$subs->{'dow'} => 1) if defined $subs->{'dow'};
$template->param(
@@ -115,9 +115,9 @@ if ($op eq 'mod' || $op eq 'dup' || $op eq 'modsubscription') {
}
}
-my $onlymine=C4::Context->preference('IndependantBranches') &&
- C4::Context->userenv &&
- C4::Context->userenv->{flags} % 2 !=1 &&
+my $onlymine=C4::Context->preference('IndependantBranches') &&
+ C4::Context->userenv &&
+ C4::Context->userenv->{flags} % 2 !=1 &&
C4::Context->userenv->{branch};
my $branches = GetBranches($onlymine);
my @branchloop;
@@ -144,9 +144,9 @@ if ($op eq 'addsubscription') {
my $branchcode = $query->param('branchcode');
my $aqbooksellerid = $query->param('aqbooksellerid');
my $cost = $query->param('cost');
- my $aqbudgetid = $query->param('aqbudgetid');
+ my $aqbudgetid = $query->param('aqbudgetid');
my $startdate = $query->param('startdate');
- my $firstacquidate = $query->param('firstacquidate');
+ my $firstacquidate = $query->param('firstacquidate');
my $periodicity = $query->param('periodicity');
my $dow = $query->param('dow');
my @irregularity = $query->param('irregularity_select');
@@ -281,7 +281,7 @@ if ($op eq 'addsubscription') {
# if we have not received any issues yet, then we also must change the firstacquidate for the subs.
$firstissuedate = $nextacquidate if($nextexpected->{isfirstissue});
}
-
+
if ($history_only) {
ModSubscriptionHistory ($subscriptionid,$histstartdate,$histenddate,$recievedlist,$missinglist,$opacnote,$librariannote);
} else {
@@ -311,7 +311,7 @@ if ($op eq 'addsubscription') {
$row{'selected'} = '';
}
push( @sub_type_data, \%row );
- }
+ }
$template->param(subtype => \@sub_type_data,
);
@@ -339,5 +339,5 @@ sub letter_loop {
};
}
$template->param(letterloop => \@letterloop) if @letterloop;
+ return;
}
-
diff --git a/serials/subscription-bib-search.pl b/serials/subscription-bib-search.pl
index e486f0c..fc70f09 100755
--- a/serials/subscription-bib-search.pl
+++ b/serials/subscription-bib-search.pl
@@ -48,6 +48,7 @@ to multipage gestion.
use strict;
+use warnings;
use CGI;
use C4::Koha;
@@ -77,7 +78,7 @@ if ($op eq "do_search" && $query) {
my $index = C4::Context->preference("item-level_itypes") ? 'itype' : 'itemtype';
$query .= " AND $index=$itemtypelimit";
}
-
+
$resultsperpage= $input->param('resultsperpage');
$resultsperpage = 20 if(!defined $resultsperpage);
@@ -91,7 +92,7 @@ if ($op eq "do_search" && $query) {
exit;
}
my @results;
-
+
for(my $i=0;$i<$total;$i++) {
my %resultsloop;
my $marcrecord = MARC::File::USMARC::decode($marcrecords->[$i]);
@@ -108,7 +109,7 @@ if ($op eq "do_search" && $query) {
push @results, \%resultsloop;
}
-
+
($template, $loggedinuser, $cookie)
= get_template_and_user({template_name => "serials/result.tmpl",
query => $input,
@@ -144,7 +145,7 @@ if ($op eq "do_search" && $query) {
}
}
}
-
+
my $from = 0;
$from = $startfrom*$resultsperpage+1 if($total_hits > 0);
my $to;
diff --git a/serials/subscription-detail.pl b/serials/subscription-detail.pl
index aa3179d..131fdef 100755
--- a/serials/subscription-detail.pl
+++ b/serials/subscription-detail.pl
@@ -16,6 +16,7 @@
# Suite 330, Boston, MA 02111-1307 USA
use strict;
+use warnings;
use CGI;
use C4::Auth;
use C4::Koha;
@@ -24,25 +25,23 @@ use C4::Serials;
use C4::Output;
use C4::Context;
use Date::Calc qw/Today Day_of_Year Week_of_Year Add_Delta_Days/;
-#use Date::Manip;
+use Carp;
my $query = new CGI;
my $op = $query->param('op');
my $dbh = C4::Context->dbh;
-my $sth;
-# my $id;
my ($template, $loggedinuser, $cookie, $hemisphere);
my $subscriptionid = $query->param('subscriptionid');
-my $subs = &GetSubscription($subscriptionid);
+my $subs = GetSubscription($subscriptionid);
$subs->{enddate} = GetExpirationDate($subscriptionid);
-if ($op eq 'del') {
+if ($op && $op eq 'del') {
if ($subs->{'cannotedit'}){
- warn "Attempt to delete subscription $subscriptionid by ".C4::Context->userenv->{'id'}." not allowed";
+ carp "Attempt to delete subscription $subscriptionid by ".C4::Context->userenv->{'id'}." not allowed";
print $query->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid");
- }
- &DelSubscription($subscriptionid);
+ }
+ DelSubscription($subscriptionid);
print "Content-Type: text/html\n\n<META HTTP-EQUIV=Refresh CONTENT=\"0; URL=serials-home.pl\"></html>";
exit;
}
@@ -75,24 +74,34 @@ $subs->{abouttoexpire} = abouttoexpire($subs->{subscriptionid});
$template->param($subs);
$template->param(biblionumber_for_new_subscription => $subs->{bibnum});
+my @irregular_issues = split /,/, $subs->{irregularity};
+if (! $subs->{numberpattern}) {
+ $subs->{numberpattern} = q{};
+}
+if (! $subs->{dow}) {
+ $subs->{dow} = q{};
+}
+if (! $subs->{periodicity}) {
+ $subs->{periodicity} = '0';
+}
$template->param(
subscriptionid => $subscriptionid,
routing => $routing,
serialslist => \@serialslist,
totalissues => $totalissues,
hemisphere => $hemisphere,
- cannotedit =>(C4::Context->preference('IndependantBranches') &&
- C4::Context->userenv &&
- C4::Context->userenv->{flags} % 2 !=1 &&
+ cannotedit =>(C4::Context->preference('IndependantBranches') &&
+ C4::Context->userenv &&
+ C4::Context->userenv->{flags} % 2 !=1 &&
C4::Context->userenv->{branch} && $subs->{branchcode} &&
(C4::Context->userenv->{branch} ne $subs->{branchcode})),
- "periodicity".($subs->{periodicity}?$subs->{periodicity}:'0') => 1,
- "arrival".$subs->{dow} => 1,
- "numberpattern".$subs->{numberpattern} => 1,
- intranetstylesheet => C4::Context->preference("intranetstylesheet"),
- intranetcolorstylesheet => C4::Context->preference("intranetcolorstylesheet"),
- irregular_issues => scalar(split(/,/,$subs->{irregularity})),
+ 'periodicity' . $subs->{periodicity} => 1,
+ 'arrival' . $subs->{dow} => 1,
+ 'numberpattern' . $subs->{numberpattern} => 1,
+ intranetstylesheet => C4::Context->preference('intranetstylesheet'),
+ intranetcolorstylesheet => C4::Context->preference('intranetcolorstylesheet'),
+ irregular_issues => scalar @irregular_issues,
);
output_html_with_http_headers $query, $cookie, $template->output;
diff --git a/serials/subscription-renew.pl b/serials/subscription-renew.pl
index 10c1205..7402af7 100755
--- a/serials/subscription-renew.pl
+++ b/serials/subscription-renew.pl
@@ -1,5 +1,4 @@
#!/usr/bin/perl
-# WARNING: 4-character tab stops here
# Copyright 2000-2002 Katipo Communications
#
@@ -45,6 +44,7 @@ Id of the subscription this script has to renew
=cut
use strict;
+use warnings;
use CGI;
use C4::Koha;
@@ -79,14 +79,14 @@ if ( $op eq "renew" ) {
$query->param('startdate'), $query->param('numberlength'),
$query->param('weeklength'), $query->param('monthlength'),
$query->param('note')
- );
+ );
}
my $subscription = GetSubscription($subscriptionid);
if ($subscription->{'cannotedit'}){
warn "Attempt to renew subscription $subscriptionid by ".C4::Context->userenv->{'id'}." not allowed";
print $query->redirect("/cgi-bin/koha/serials/subscription-detail.pl?subscriptionid=$subscriptionid");
-}
+}
$template->param(
startdate => format_date(
@@ -99,12 +99,8 @@ $template->param(
subscriptionid => $subscriptionid,
bibliotitle => $subscription->{bibliotitle},
$op => 1,
- popup => ($query->param('mode')eq "popup"),
+ popup => ($query->param('mode')eq "popup"),
);
# Print the page
output_html_with_http_headers $query, $cookie, $template->output;
-
-# Local Variables:
-# tab-width: 4
-# End:
--
1.6.2.5
More information about the Koha-patches
mailing list