package C4::Serials;
# Copyright 2000-2002 Katipo Communications
+# Parts Copyright 2010 Biblibre
#
# This file is part of Koha.
#
sub GetSuppliersWithLateIssues {
my $dbh = C4::Context->dbh;
- my $query = q|
- SELECT DISTINCT aqbooksellerid as id, aqbooksellers.name as name
+ my $query = qq|
+ SELECT DISTINCT id, name
FROM subscription
LEFT JOIN serial ON serial.subscriptionid=subscription.subscriptionid
LEFT JOIN aqbooksellers ON subscription.aqbooksellerid = aqbooksellers.id
- WHERE id > 0 AND (planneddate < now() OR serial.STATUS = 3 OR serial.STATUS = 4) ORDER BY name|;
+ WHERE id > 0 AND ((planneddate < now() AND serial.status=1) OR serial.STATUS = 3 OR serial.STATUS = 4) ORDER BY name|;
return $dbh->selectall_arrayref($query, { Slice => {} });
}
LEFT JOIN biblio ON biblio.biblionumber = subscription.biblionumber
LEFT JOIN aqbooksellers ON subscription.aqbooksellerid = aqbooksellers.id
WHERE ((planneddate < now() AND serial.STATUS =1) OR serial.STATUS = 3)
- AND subscription.aqbooksellerid=$supplierid
+ AND subscription.aqbooksellerid=?
ORDER BY title
|;
$sth = $dbh->prepare($query);
+ $sth->execute($supplierid);
} else {
my $query = qq|
SELECT name,title,planneddate,serialseq,serial.subscriptionid
ORDER BY title
|;
$sth = $dbh->prepare($query);
+ $sth->execute;
}
- $sth->execute;
my @issuelist;
my $last_title;
my $odd = 0;
$sth = $dbh->prepare($sql);
$sth->execute(@bind_params);
my @results;
- my $previoustitle = "";
+ my $previousbiblio = "";
my $odd = 1;
while ( my $line = $sth->fetchrow_hashref ) {
- if ( $previoustitle eq $line->{title} ) {
+ if ( $previousbiblio eq $line->{biblionumber} ) {
$line->{title} = "";
$line->{issn} = "";
} else {
- $previoustitle = $line->{title};
+ $previousbiblio = $line->{biblionumber};
$odd = -$odd;
}
$line->{toggle} = 1 if $odd == 1;
my @serials;
while ( my $line = $sth->fetchrow_hashref ) {
- $line->{ "status" . $line->{status} } = 1; # fills a "statusX" value, used for template status select list
- $line->{"planneddate"} = format_date( $line->{"planneddate"} );
- $line->{"publisheddate"} = format_date( $line->{"publisheddate"} );
+ $line->{ "status" . $line->{status} } = 1; # fills a "statusX" value, used for template status select list
+ # Format dates for display
+ for my $datefield ( qw( planneddate publisheddate ) ) {
+ if ($line->{$datefield} =~m/^00/) {
+ $line->{$datefield} = q{};
+ }
+ else {
+ $line->{$datefield} = format_date( $line->{$datefield} );
+ }
+ }
push @serials, $line;
}
return @serials;
"SELECT
serialid, aqbooksellerid, name,
biblio.title, planneddate, serialseq,
- serial.status, serial.subscriptionid, claimdate
+ serial.status, serial.subscriptionid, claimdate,
+ subscription.branchcode
FROM serial
LEFT JOIN subscription ON serial.subscriptionid=subscription.subscriptionid
LEFT JOIN biblio ON subscription.biblionumber=biblio.biblionumber
"SELECT
serialid, aqbooksellerid, name,
biblio.title, planneddate, serialseq,
- serial.status, serial.subscriptionid, claimdate
+ serial.status, serial.subscriptionid, claimdate,
+ subscription.branchcode
FROM serial
LEFT JOIN subscription ON serial.subscriptionid=subscription.subscriptionid
LEFT JOIN biblio ON subscription.biblionumber=biblio.biblionumber