#!/usr/bin/perl
-# $Id$
# Copyright 2000-2002 Katipo Communications
#
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
-# You should have received a copy of the GNU General Public License along with
-# Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place,
-# Suite 330, Boston, MA 02111-1307 USA
+# You should have received a copy of the GNU General Public License along
+# with Koha; if not, write to the Free Software Foundation, Inc.,
+# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
use strict;
use C4::Auth;
use CGI;
use C4::Context;
-use HTML::Template;
use C4::Search;
use C4::Output;
use C4::Koha;
-
+use C4::Branch; # GetBranches
=head1
=cut
sub set_parameters {
- my ($template) = @_;
- my $dbh = C4::Context->dbh;
- my $branches=getbranches();
- my @branches;
- my @select_branch;
- my %select_branches;
- push @select_branch,"";
- $select_branches{""} = "";
- foreach my $branch (keys %$branches) {
- push @select_branch, $branch;
- $select_branches{$branch} = $branches->{$branch}->{'branchname'};
- }
- my $CGIbranch=CGI::scrolling_list( -name => 'value',
- -id => 'value',
- -values => \@select_branch,
- -labels => \%select_branches,
- -size => 1,
- -multiple => 0 );
- $template->param(CGIbranch => $CGIbranch);
- return $template;
+ my ($template) = @_;
+ my $userbranch = '';
+ if (C4::Context->userenv && C4::Context->userenv->{'branch'}) {
+ $userbranch = C4::Context->userenv->{'branch'};
+ }
+ $template->param( branchloop => GetBranchesLoop($userbranch) );
+ return $template;
}
+
sub calculate {
my ($parameters) = @_;
my @results =();
my $dbh = C4::Context->dbh;
my $sth;
if ($branch) {
- $sth = $dbh->prepare("select description, biblioitems.itemtype, count(*) as total from itemtypes, biblioitems, items
- where biblioitems.itemtype=itemtypes.itemtype
- and items.biblionumber=biblioitems.biblionumber
- and items.holdingbranch=?
- group by biblioitems.itemtype");
+ if (C4::Context->preference('item-level_itypes')) {
+ $sth = $dbh->prepare("
+ SELECT description, items.itype as itemtype, COUNT(*) AS total
+ FROM itemtypes,items
+ WHERE items.itype=itemtypes.itemtype
+ AND items.holdingbranch=?
+ GROUP BY items.itype
+ ORDER BY itemtypes.description");
+
+ }
+ else {
+ $sth = $dbh->prepare("
+ SELECT description, biblioitems.itemtype, COUNT(*) AS total
+ FROM itemtypes, biblioitems, items
+ WHERE biblioitems.itemtype=itemtypes.itemtype
+ AND items.biblioitemnumber=biblioitems.biblioitemnumber
+ AND items.holdingbranch=?
+ GROUP BY biblioitems.itemtype
+ ORDER BY itemtypes.description");
+ }
$sth->execute($branch);
} else {
- $sth = $dbh->prepare("select description, biblioitems.itemtype, count(*) as total from itemtypes, biblioitems where biblioitems.itemtype=itemtypes.itemtype group by biblioitems.itemtype");
+ if (C4::Context->preference('item-level_itypes')) {
+ $sth = $dbh->prepare("
+ SELECT description,items.itype AS itemtype, COUNT(*) AS total
+ FROM itemtypes,items
+ WHERE items.itype=itemtypes.itemtype
+ GROUP BY items.itype
+ ORDER BY itemtypes.description");
+ }
+ else {
+ $sth = $dbh->prepare("SELECT description, biblioitems.itemtype, COUNT(*) AS total
+ FROM itemtypes, biblioitems,items
+ WHERE biblioitems.itemtype=itemtypes.itemtype
+ AND biblioitems.biblioitemnumber = items.biblioitemnumber
+ GROUP BY biblioitems.itemtype
+ ORDER BY itemtypes.description");
+ }
$sth->execute;
}
my ($description,$biblioitems,$total);
$globalline{loopitemtype} = \@results;
$globalline{total} = $grantotal;
$globalline{branch} = $branch;
+ $globalline{branchname} = GetBranchName($branch);
push @mainloop,\%globalline;
return \@mainloop;
}
-1;
\ No newline at end of file
+1;