X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;ds=sidebyside;f=reports%2Fitemslost.pl;h=547c187e8d9f85d6506ef1ddcaf42c23cfdd1417;hb=f91bd36399b1ab46649482f80e0ff1b438a8d9f6;hp=3844dd65b274e7f20528cdf1cbfbd039d0f71a98;hpb=606ae968a8b36e747c8c7575b19d9e481b38289e;p=koha_gimpoz diff --git a/reports/itemslost.pl b/reports/itemslost.pl index 3844dd65b2..547c187e8d 100755 --- a/reports/itemslost.pl +++ b/reports/itemslost.pl @@ -15,7 +15,6 @@ # Koha; if not, write to the Free Software Foundation, Inc., 59 Temple Place, # Suite 330, Boston, MA 02111-1307 USA -#$Id$ =head1 itemslost @@ -24,12 +23,16 @@ This script displays lost items. =cut use strict; +use warnings; + use CGI; use C4::Auth; use C4::Output; -use C4::Biblio; # GetLostItems +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,49 +41,49 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user( query => $query, type => "intranet", authnotrequired => 0, - flagsrequired => { reportss => 1 }, + flagsrequired => { reports => '*' }, debug => 1, } ); my $params = $query->Vars; +my $get_items = $params->{'get_items'}; -if ( $params->{'get_items'} ) { - my $orderbyfilter = $params->{'orderbyfilter'} || undef; - my $branchfilter = $params->{'branchfilter'} || undef; - my $barcodefilter = $params->{'barcodefilter'} || undef; - my $itemtypesfilter = $params->{'itemtypesfilter'} || undef; +if ( $get_items ) { + 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 - ); + 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'}, @@ -88,9 +91,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