X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=reports%2Fitemslost.pl;h=547c187e8d9f85d6506ef1ddcaf42c23cfdd1417;hb=7d8b369ba4066d485e5aa7739b1b073f0db80b45;hp=844b240c91eaa1a89b8af35a575106b266b919cd;hpb=606ecb532aa42562687bf0d05b4d6df6697300d7;p=koha_fer diff --git a/reports/itemslost.pl b/reports/itemslost.pl index 844b240c91..547c187e8d 100755 --- a/reports/itemslost.pl +++ b/reports/itemslost.pl @@ -23,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( @@ -37,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'}, @@ -87,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