X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;f=circ%2Fview_holdsqueue.pl;h=b7070fd7a1f5fcb9f34ece8aed4f4c4a9ca4c17d;hb=f41f272ff087d65ed11d760e6c7c58818c3a24d4;hp=4b514239a4911648ecda348cefc3b3f9ff69d3d9;hpb=8b80b315c3689bd58bee4cb5fc3c0d843bd080eb;p=koha-ffzg.git diff --git a/circ/view_holdsqueue.pl b/circ/view_holdsqueue.pl index 4b514239a4..b7070fd7a1 100755 --- a/circ/view_holdsqueue.pl +++ b/circ/view_holdsqueue.pl @@ -2,18 +2,18 @@ # This file is part of Koha. # -# Koha is free software; you can redistribute it and/or modify it under the -# terms of the GNU General Public License as published by the Free Software -# Foundation; either version 2 of the License, or (at your option) any later -# version. +# Koha is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. # -# Koha is distributed in the hope that it will be useful, but WITHOUT ANY -# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR -# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# Koha is distributed in the hope that it will be useful, but +# WITHOUT ANY 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, see . =head1 view_holdsqueue @@ -22,26 +22,21 @@ This script displays items in the tmp_holdsqueue table =cut -use strict; -use warnings; -use CGI; -use C4::Auth; -use C4::Output; -use C4::Biblio; -use C4::Items; -use C4::Koha; # GetItemTypes -use C4::Branch; # GetBranches -use C4::Dates qw/format_date/; +use Modern::Perl; +use CGI qw ( -utf8 ); +use C4::Auth qw( get_template_and_user ); +use C4::Output qw( output_html_with_http_headers ); +use C4::HoldsQueue qw( GetHoldsQueueItems ); +use Koha::BiblioFrameworks; +use Koha::ItemTypes; -my $query = new CGI; -my ( $template, $loggedinuser, $cookie ) = get_template_and_user( +my $query = CGI->new; +my ( $template, $loggedinuser, $cookie, $flags ) = get_template_and_user( { - template_name => "circ/view_holdsqueue.tmpl", + template_name => "circ/view_holdsqueue.tt", query => $query, type => "intranet", - authnotrequired => 0, flagsrequired => { circulate => "circulate_remaining_permissions" }, - debug => 1, } ); @@ -49,63 +44,32 @@ my $params = $query->Vars; my $run_report = $params->{'run_report'}; my $branchlimit = $params->{'branchlimit'}; my $itemtypeslimit = $params->{'itemtypeslimit'}; +my $ccodeslimit = $params->{'ccodeslimit'}; +my $locationslimit = $params->{'locationslimit'}; if ( $run_report ) { - my $items = GetHoldsQueueItems($branchlimit, $itemtypeslimit); + my $items = GetHoldsQueueItems({ + branchlimit => $branchlimit, + itemtypeslimit => $itemtypeslimit, + ccodeslimit => $ccodeslimit, + locationslimit => $locationslimit + }); + for my $item ( @$items ) { + $item->{patron} = Koha::Patrons->find( $item->{borrowernumber} ); + } $template->param( - branch => $branchlimit, + branchlimit => $branchlimit, + itemtypeslimit => $itemtypeslimit, + ccodeslimit => $ccodeslimit, + locationslimit => $locationslimit, total => scalar @$items, itemsloop => $items, run_report => $run_report, - dateformat => C4::Context->preference("dateformat"), ); } -# getting all itemtypes -my $itemtypes = &GetItemTypes(); -my @itemtypesloop; -foreach my $thisitemtype ( sort keys %$itemtypes ) { - push @itemtypesloop, { - value => $thisitemtype, - description => $itemtypes->{$thisitemtype}->{'description'}, - }; -} - -$template->param( - branchloop => GetBranchesLoop(C4::Context->userenv->{'branch'}), - itemtypeloop => \@itemtypesloop, -); - -sub GetHoldsQueueItems { - my ($branchlimit,$itemtypelimit) = @_; - my $dbh = C4::Context->dbh; +# Checking if there is a Fast Cataloging Framework +$template->param( fast_cataloging => 1 ) if Koha::BiblioFrameworks->find( 'FA' ); - my @bind_params = (); - my $query = q/SELECT tmp_holdsqueue.*, biblio.author, items.ccode, items.location, items.enumchron, items.cn_sort, biblioitems.publishercode,biblio.copyrightdate,biblioitems.publicationyear,biblioitems.pages,biblioitems.size,biblioitems.publicationyear,biblioitems.isbn,items.copynumber - FROM tmp_holdsqueue - JOIN biblio USING (biblionumber) - LEFT JOIN biblioitems USING (biblionumber) - LEFT JOIN items USING ( itemnumber) - /; - if ($branchlimit) { - $query .=" WHERE tmp_holdsqueue.holdingbranch = ?"; - push @bind_params, $branchlimit; - } - $query .= " ORDER BY ccode, location, cn_sort, author, title, pickbranch, reservedate"; - my $sth = $dbh->prepare($query); - $sth->execute(@bind_params); - my $items = []; - while ( my $row = $sth->fetchrow_hashref ){ - $row->{reservedate} = format_date($row->{reservedate}); - my $record = GetMarcBiblio($row->{biblionumber}); - if ($record){ - $row->{subtitle} = GetRecordValue('subtitle',$record,'')->[0]->{subfield}; - $row->{parts} = GetRecordValue('parts',$record,'')->[0]->{subfield}; - $row->{numbers} = GetRecordValue('numbers',$record,'')->[0]->{subfield}; - } - push @$items, $row; - } - return $items; -} # writing the template output_html_with_http_headers $query, $cookie, $template->output;