X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=reports%2Fitemtypes.plugin;h=e4164a5a76f77013d0d7d902b58c07de4fe0d630;hb=789c562e188ce2705fb94cc79403a7616cb092e3;hp=61f05df719055085788274d58ceee604004c67e5;hpb=64cd740d2bd84299c6835192ee55c5dbf72be6bf;p=koha_fer diff --git a/reports/itemtypes.plugin b/reports/itemtypes.plugin old mode 100644 new mode 100755 index 61f05df719..e4164a5a76 --- a/reports/itemtypes.plugin +++ b/reports/itemtypes.plugin @@ -1,6 +1,5 @@ #!/usr/bin/perl -# $Id$ # Copyright 2000-2002 Katipo Communications # @@ -15,45 +14,32 @@ # 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 =(); @@ -61,14 +47,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.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); @@ -92,8 +108,9 @@ sub calculate { $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;