X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=members%2Frouting-lists.pl;h=d298a95b1ed120b24df531707a035f4c19392f44;hb=d482aef2e420cc2466a6e645eebea9c0c8d4a19d;hp=25b0f85d4f41a577e91bb58115dbd1dc73cca945;hpb=e31b55de3119c35de64c5428412fe5f6d29f796a;p=koha.git diff --git a/members/routing-lists.pl b/members/routing-lists.pl index 25b0f85d4f..d298a95b1e 100755 --- a/members/routing-lists.pl +++ b/members/routing-lists.pl @@ -4,45 +4,32 @@ # # 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., -# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +# You should have received a copy of the GNU General Public License +# along with Koha; if not, see . -use strict; -#use warnings; FIXME - Bug 2505 -use CGI; +use Modern::Perl; +use CGI qw ( -utf8 ); use C4::Output; -use C4::Auth qw/:DEFAULT get_session/; -use C4::Branch; # GetBranches +use C4::Auth qw/:DEFAULT/; use C4::Members; +use C4::Members::Attributes qw(GetBorrowerAttributes); use C4::Context; use C4::Serials; +use Koha::Patrons; use CGI::Session; my $query = new CGI; -my $sessionID = $query->cookie("CGISESSID") ; -my $session = get_session($sessionID); - -# branch are now defined by the userenv -# but first we have to check if someone has tried to change them - -my $branch = $query->param('branch'); -if ($branch){ - # update our session so the userenv is updated - $session->param('branch', $branch); - $session->param('branchname', GetBranchName($branch)); -} - my ( $template, $loggedinuser, $cookie ) = get_template_and_user ( { template_name => 'members/routing-lists.tt', @@ -53,81 +40,63 @@ my ( $template, $loggedinuser, $cookie ) = get_template_and_user ( } ); -my $branches = GetBranches(); - my $findborrower = $query->param('findborrower'); $findborrower =~ s|,| |g; my $borrowernumber = $query->param('borrowernumber'); -$branch = C4::Context->userenv->{'branch'}; +my $branch = C4::Context->userenv->{'branch'}; -# get the borrower information..... -my $borrower; -if ($borrowernumber) { - $borrower = GetMemberDetails( $borrowernumber, 0 ); -} +my $logged_in_user = Koha::Patrons->find( $loggedinuser ) or die "Not logged in"; +my $patron = Koha::Patrons->find( $borrowernumber ); +output_and_exit_if_error( $query, $cookie, $template, { module => 'members', logged_in_user => $logged_in_user, current_patron => $patron } ); +my $category = $patron->category; +my $patron_info = $patron->unblessed; +$patron_info->{description} = $category->description; +$patron_info->{category_type} = $category->category_type; -################################################################################## -# BUILD HTML -# I'm trying to show the title of subscriptions where the borrowernumber is attached via a routing list - -if ($borrowernumber) { -# new op dev - my $count; - my @borrowerSubscriptions; - ($count, @borrowerSubscriptions) = GetSubscriptionsFromBorrower($borrowernumber ); - my @subscripLoop; - - foreach my $num_res (@borrowerSubscriptions) { - my %getSubscrip; - $getSubscrip{subscriptionid} = $num_res->{'subscriptionid'}; - $getSubscrip{title} = $num_res->{'title'}; - $getSubscrip{borrowernumber} = $num_res->{'borrowernumber'}; - push( @subscripLoop, \%getSubscrip ); - } - - $template->param( - countSubscrip => scalar @subscripLoop, - subscripLoop => \@subscripLoop, - routinglistview => 1 - ); +my $count; +my @borrowerSubscriptions; +($count, @borrowerSubscriptions) = GetSubscriptionsFromBorrower($borrowernumber ); +my @subscripLoop; - $template->param( adultborrower => 1 ) if ( $borrower->{'category_type'} eq 'A' ); +foreach my $num_res (@borrowerSubscriptions) { + my %getSubscrip; + $getSubscrip{subscriptionid} = $num_res->{'subscriptionid'}; + $getSubscrip{title} = $num_res->{'title'}; + $getSubscrip{borrowernumber} = $num_res->{'borrowernumber'}; + push( @subscripLoop, \%getSubscrip ); } -################################################################################## +$template->param( + countSubscrip => scalar @subscripLoop, + subscripLoop => \@subscripLoop, + routinglistview => 1 +); +$template->param( adultborrower => 1 ) if ( $patron_info->{category_type} =~ /^(A|I)$/ ); -# Computes full borrower address -my (undef, $roadttype_hashref) = &GetRoadTypes(); -my $address = $borrower->{'streetnumber'}.' '.$roadttype_hashref->{$borrower->{'streettype'}}.' '.$borrower->{'address'}; +################################################################################## -$template->param( +$template->param(%$patron_info); +$template->param( findborrower => $findborrower, - borrower => $borrower, + borrower => $patron_info, borrowernumber => $borrowernumber, branch => $branch, - branchname => GetBranchName($borrower->{'branchcode'}), - firstname => $borrower->{'firstname'}, - surname => $borrower->{'surname'}, - categorycode => $borrower->{'categorycode'}, - categoryname => $borrower->{description}, - address => $address, - address2 => $borrower->{'address2'}, - email => $borrower->{'email'}, - emailpro => $borrower->{'emailpro'}, - borrowernotes => $borrower->{'borrowernotes'}, - city => $borrower->{'city'}, - zipcode => $borrower->{'zipcode'}, - country => $borrower->{'country'}, - phone => $borrower->{'phone'} || $borrower->{'mobile'}, - cardnumber => $borrower->{'cardnumber'}, + categoryname => $patron_info->{description}, ); -my ($picture, $dberror) = GetPatronImage($borrower->{'cardnumber'}); -$template->param( picture => 1 ) if $picture; +if (C4::Context->preference('ExtendedPatronAttributes')) { + my $attributes = GetBorrowerAttributes($borrowernumber); + $template->param( + ExtendedPatronAttributes => 1, + extendedattributes => $attributes + ); +} + +$template->param( picture => 1 ) if $patron and $patron->image; output_html_with_http_headers $query, $cookie, $template->output;