X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=reports%2Fitemtypes.plugin;h=813435440beff3cc5589311db34715dc8d9efed5;hb=1d882495c2cd28f0ffd3d492aa99611a82ca1825;hp=4443b86a832825b32e68157f97407b9d60f17a25;hpb=fc1342f73df868410e0ab670981f25ba2e1acd74;p=koha_gimpoz diff --git a/reports/itemtypes.plugin b/reports/itemtypes.plugin old mode 100644 new mode 100755 index 4443b86a83..813435440b --- a/reports/itemtypes.plugin +++ b/reports/itemtypes.plugin @@ -1,6 +1,5 @@ #!/usr/bin/perl -# $Id$ # Copyright 2000-2002 Katipo Communications # @@ -15,15 +14,14 @@ # 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; @@ -37,20 +35,23 @@ sub set_parameters { my $dbh = C4::Context->dbh; my $branches=GetBranches(); my @branches; + my $default; my @select_branch; my %select_branches; push @select_branch,""; $select_branches{""} = ""; - foreach my $branch (keys %$branches) { + for my $branch (sort { $branches->{$a}->{branchname} cmp $branches->{$b}->{branchname} } keys %$branches) { push @select_branch, $branch; $select_branches{$branch} = $branches->{$branch}->{'branchname'}; + $default = C4::Context->userenv->{'branch'} if (C4::Context->userenv && C4::Context->userenv->{'branch'}); } my $CGIbranch=CGI::scrolling_list( -name => 'value', -id => 'value', -values => \@select_branch, -labels => \%select_branches, -size => 1, - -multiple => 0 ); + -multiple => 0, + -default => $default, ); $template->param(CGIbranch => $CGIbranch); return $template; } @@ -61,15 +62,44 @@ sub calculate { 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.biblioitemnumber=biblioitems.biblioitemnumber - 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,items where biblioitems.itemtype=itemtypes.itemtype - and biblioitems.biblioitemnumber = items.biblioitemnumber 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); @@ -93,6 +123,7 @@ sub calculate { $globalline{loopitemtype} = \@results; $globalline{total} = $grantotal; $globalline{branch} = $branch; + $globalline{branchname} = GetBranchName($branch); push @mainloop,\%globalline; return \@mainloop; }