X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=tools%2Fviewlog.pl;h=1fbd6be1007a26c4d94a2e54fc97f602516b897c;hb=ef5d4f3c62957100dae0948a44bd27a2159892b4;hp=84c247468b5e780948d81e99c4a4cd489089a2ef;hpb=f9299b1a76b7c6195e7abcc689127e78ce26701c;p=koha_fer diff --git a/tools/viewlog.pl b/tools/viewlog.pl index 84c247468b..1fbd6be100 100755 --- a/tools/viewlog.pl +++ b/tools/viewlog.pl @@ -1,7 +1,7 @@ #!/usr/bin/perl - -# Copyright 2000-2002 Katipo Communications +# Copyright 2010 BibLibre +# Copyright 2011 MJ Ray and software.coop # # This file is part of Koha. # @@ -47,7 +47,7 @@ $debug or $debug = $cgi_debug; my $do_it = $input->param('do_it'); my @modules = $input->param("modules"); my $user = $input->param("user"); -my $action = $input->param("action"); +my @action = $input->param("action"); my $object = $input->param("object"); my $info = $input->param("info"); my $datefrom = $input->param("from"); @@ -72,47 +72,80 @@ if ($src eq 'circ') { # if we were called from circulation, use the circulatio use C4::Members; my $borrowernumber = $object; my $data = GetMember('borrowernumber'=>$borrowernumber); - my ($picture, $dberror) = GetPatronImage($data->{'cardnumber'}); + my ($picture, $dberror) = GetPatronImage($data->{'borrowernumber'}); $template->param( picture => 1 ) if $picture; + $template->param( menu => 1, title => $data->{'title'}, initials => $data->{'initials'}, surname => $data->{'surname'}, + othernames => $data->{'othernames'}, borrowernumber => $borrowernumber, firstname => $data->{'firstname'}, cardnumber => $data->{'cardnumber'}, categorycode => $data->{'categorycode'}, + category_type => $data->{'category_type'}, categoryname => $data->{'description'}, address => $data->{'address'}, address2 => $data->{'address2'}, city => $data->{'city'}, - zipcode => $data->{'zipcode'}, + state => $data->{'state'}, + zipcode => $data->{'zipcode'}, phone => $data->{'phone'}, phonepro => $data->{'phonepro'}, email => $data->{'email'}, branchcode => $data->{'branchcode'}, branchname => GetBranchName($data->{'branchcode'}), + RoutingSerials => C4::Context->preference('RoutingSerials'), ); } $template->param( - DHTMLcalendar_dateformat => C4::Dates->DHTMLcalendar(), - dateformat => C4::Dates->new()->format(), - debug => $debug, - C4::Search::enabled_staff_search_views, + debug => $debug, + C4::Search::enabled_staff_search_views, ); if ($do_it) { - my $results = GetLogs($datefrom,$dateto,$user,\@modules,$action,$object,$info); - my $total = scalar @$results; - foreach my $result (@$results){ - if ($result->{'info'} eq 'item'){ + my @data; + my ($results,$modules,$action); + if ($action[0] ne '') { $action = \@action; } # match All means no limit + if ($modules[0] ne '') { $modules = \@modules; } # match All means no limit + $results = GetLogs($datefrom,$dateto,$user,$modules,$action,$object,$info); + @data=@$results; + my $total = scalar @data; + foreach my $result (@data){ + if (substr($result->{'info'}, 0, 4) eq 'item' || $result->{module} eq "CIRCULATION"){ # get item information so we can create a working link - my $item=GetItem($result->{'object'}); + my $itemnumber=$result->{'object'}; + $itemnumber=$result->{'info'} if ($result->{module} eq "CIRCULATION"); + my $item=GetItem($itemnumber); $result->{'biblionumber'}=$item->{'biblionumber'}; $result->{'biblioitemnumber'}=$item->{'biblionumber'}; + $result->{'barcode'}=$item->{'barcode'}; } + #always add firstname and surname for librarian/user + if ($result->{'user'}){ + my $userdetails = C4::Members::GetMemberDetails($result->{'user'}); + if ($userdetails->{'firstname'}){ + $result->{'userfirstname'} = $userdetails->{'firstname'}; + } + if ($userdetails->{'surname'}){ + $result->{'usersurname'} = $userdetails->{'surname'}; + } + } + #add firstname and surname for borrower, when using the CIRCULATION, MEMBERS, FINES + if ($result->{module} eq "CIRCULATION" || $result->{module} eq "MEMBERS" || $result->{module} eq "FINES"){ + if($result->{'object'}){ + my $borrowerdetails = C4::Members::GetMemberDetails($result->{'object'}); + if ($borrowerdetails->{'firstname'}){ + $result->{'borrowerfirstname'} = $borrowerdetails->{'firstname'}; + } + if ($borrowerdetails->{'surname'}){ + $result->{'borrowersurname'} = $borrowerdetails->{'surname'}; + } + } + } } if ( $output eq "screen" ) { @@ -120,13 +153,13 @@ if ($do_it) { $template->param ( logview => 1, total => $total, - looprow => $results, + looprow => \@data, do_it => 1, datefrom => $datefrom, dateto => $dateto, user => $user, object => $object, - action => $action, + action => \@action, info => $info, src => $src, ); @@ -144,7 +177,7 @@ if ($do_it) { -filename => "$basename.csv" ); my $sep = C4::Context->preference("delimiter"); - foreach my $line (@$results) { + foreach my $line (@data) { #next unless $modules[0] eq "catalogue"; foreach (qw(timestamp firstname surname action info title author)) { print $line->{$_} . $sep;