X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=reports%2Fitemslost.pl;h=9ecd5997ff4af79e09ac0fe954cf4f327582f298;hb=9c5e40e4923179bf0b2b630d3e09797dc4c1fdb0;hp=33fbfef4e279bd080d30f716a3367c5495e6a192;hpb=1a90d0db7d71a97d05d085e6c8c857d0570dfa94;p=koha.git diff --git a/reports/itemslost.pl b/reports/itemslost.pl index 33fbfef4e2..9ecd5997ff 100755 --- a/reports/itemslost.pl +++ b/reports/itemslost.pl @@ -1,5 +1,8 @@ #!/usr/bin/perl +# Copyright Liblime 2007 +# Copyright Biblibre 2009 +# # This file is part of Koha. # # Koha is free software; you can redistribute it and/or modify it under the @@ -11,9 +14,9 @@ # 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. =head1 itemslost @@ -23,6 +26,8 @@ This script displays lost items. =cut use strict; +use warnings; + use CGI; use C4::Auth; use C4::Output; @@ -30,6 +35,7 @@ use C4::Biblio; use C4::Items; use C4::Koha; # GetItemTypes use C4::Branch; # GetBranches +use C4::Dates qw/format_date/; my $query = new CGI; my ( $template, $loggedinuser, $cookie ) = get_template_and_user( @@ -38,7 +44,7 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( query => $query, type => "intranet", authnotrequired => 0, - flagsrequired => { reports => 1 }, + flagsrequired => { reports => '*' }, debug => 1, } ); @@ -47,42 +53,40 @@ my $params = $query->Vars; my $get_items = $params->{'get_items'}; if ( $get_items ) { - my $orderbyfilter = $params->{'orderbyfilter'} || undef; - my $branchfilter = $params->{'branchfilter'} || undef; - my $barcodefilter = $params->{'barcodefilter'} || undef; - my $itemtypesfilter = $params->{'itemtypesfilter'} || undef; + my $orderbyfilter = $params->{'orderbyfilter'} || undef; + my $branchfilter = $params->{'branchfilter'} || undef; + my $barcodefilter = $params->{'barcodefilter'} || undef; + my $itemtypesfilter = $params->{'itemtypesfilter'} || undef; + my $loststatusfilter = $params->{'loststatusfilter'} || undef; my %where; - $where{homebranch} = $branchfilter if defined $branchfilter; - $where{barcode} = $barcodefilter if defined $barcodefilter; - $where{itemtype} = $itemtypesfilter if defined $itemtypesfilter; + $where{'homebranch'} = $branchfilter if defined $branchfilter; + $where{'barcode'} = $barcodefilter if defined $barcodefilter; + $where{'authorised_value'} = $loststatusfilter if defined $loststatusfilter; + + my $itype = C4::Context->preference('item-level_itypes') ? "itype" : "itemtype"; + $where{$itype} = $itemtypesfilter if defined $itemtypesfilter; - my $items = GetLostItems( \%where, $orderbyfilter ); + my $items = GetLostItems( \%where, $orderbyfilter ); + foreach my $it (@$items) { + $it->{'datelastseen'} = format_date($it->{'datelastseen'}); + } $template->param( - total => scalar @$items, - itemsloop => $items, - get_items => $get_items - ); + total => scalar @$items, + itemsloop => $items, + get_items => $get_items, + itype_level => C4::Context->preference('item-level_itypes'), + ); } # getting all branches. -my $branches = GetBranches; -my $branch = C4::Context->userenv->{"branchname"}; -my @branchloop; -foreach my $thisbranch ( keys %$branches ) { - my $selected = 1 if $thisbranch eq $branch; - my %row = ( - value => $thisbranch, - selected => $selected, - branchname => $branches->{$thisbranch}->{'branchname'}, - ); - push @branchloop, \%row; -} +#my $branches = GetBranches; +#my $branch = C4::Context->userenv->{"branchname"}; # getting all itemtypes my $itemtypes = &GetItemTypes(); my @itemtypesloop; -foreach my $thisitemtype ( sort keys %$itemtypes ) { +foreach my $thisitemtype ( sort {$itemtypes->{$a}->{description} cmp $itemtypes->{$b}->{description}} keys %$itemtypes ) { my %row = ( value => $thisitemtype, description => $itemtypes->{$thisitemtype}->{'description'}, @@ -90,9 +94,12 @@ foreach my $thisitemtype ( sort keys %$itemtypes ) { push @itemtypesloop, \%row; } -$template->param( - branchloop => \@branchloop, - itemtypeloop => \@itemtypesloop, +# get lost statuses +my $lost_status_loop = C4::Koha::GetAuthorisedValues( 'LOST' ); + +$template->param( branchloop => GetBranchesLoop(C4::Context->userenv->{'branch'}), + itemtypeloop => \@itemtypesloop, + loststatusloop => $lost_status_loop, ); # writing the template