X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=members%2Fmembers-home.pl;h=659ce8e0f02a9fda9b4361fa9403c3e809bd2e02;hb=a3036b4760d80dd3d2188f5f95c6f4279ecef74b;hp=6cb60fa6a4d19916498283adb6cf0f88d9c23b87;hpb=622f804ffdb0f38ab8ba9b4952729e7c5e9a3234;p=koha.git diff --git a/members/members-home.pl b/members/members-home.pl index 6cb60fa6a4..659ce8e0f0 100755 --- a/members/members-home.pl +++ b/members/members-home.pl @@ -3,84 +3,75 @@ # Parts Copyright Biblibre 2010 # 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 . -use strict; -use warnings; +use Modern::Perl; -use CGI; +use CGI qw ( -utf8 ); use C4::Auth; use C4::Output; use C4::Context; use C4::Members; -use C4::Branch; -use C4::Category; +use Koha::Patron::Modifications; +use Koha::Libraries; +use Koha::List::Patron; +use Koha::Patron::Categories; my $query = new CGI; -my $branch = $query->param('branchcode'); -my $template_name; -my ($template, $loggedinuser, $cookie) - = get_template_and_user({template_name => "members/member.tmpl", +my ($template, $loggedinuser, $cookie, $flags) + = get_template_and_user({template_name => "members/member.tt", query => $query, type => "intranet", authnotrequired => 0, - flagsrequired => {borrowers => 1}, + flagsrequired => {borrowers => 'edit_borrowers'}, debug => 1, }); -my $branches = GetBranches; -my @branchloop; -foreach (sort { $branches->{$a}->{branchname} cmp $branches->{$b}->{branchname} } keys %$branches) { - my $selected = 1 if $branches->{$_}->{branchcode} eq $branch; - my %row = ( value => $_, - selected => $selected, - branchname => $branches->{$_}->{branchname}, - ); - push @branchloop, \%row; -} - -my @categories; -my $no_categories; my $no_add = 0; -my $branchloop = (defined $branch?GetBranchesLoop($branch):GetBranchesLoop()); -if(scalar(@$branchloop) < 1){ +if( Koha::Libraries->search->count < 1){ $no_add = 1; $template->param(no_branches => 1); -} -else { - $template->param(branchloop=>\@$branchloop); -} - -@categories=C4::Category->all; -if(scalar(@categories) < 1){ - $no_categories = 1; } -if($no_categories && C4::Context->preference("AddPatronLists")=~/code/){ +my @categories = Koha::Patron::Categories->search_limited; +if(scalar(@categories) < 1){ $no_add = 1; $template->param(no_categories => 1); -} +} else { $template->param(categories=>\@categories); } +my $branch = + ( C4::Context->preference("IndependentBranchesPatronModifications") + || C4::Context->preference("IndependentBranches") ) + && !$flags->{'superlibrarian'} + ? C4::Context->userenv()->{'branch'} + : undef; + +my $pending_borrower_modifications = Koha::Patron::Modifications->pending_count( $branch ); + $template->param( - "AddPatronLists_".C4::Context->preference("AddPatronLists")=> "1", no_add => $no_add, + pending_borrower_modifications => $pending_borrower_modifications, ); -my @letters = map { {letter => $_} } ( 'A' .. 'Z'); -$template->param( letters => \@letters ); + +$template->param( + alphabet => C4::Context->preference('alphabet') || join (' ', 'A' .. 'Z'), + patron_lists => [ GetPatronLists() ], + PatronsPerPage => C4::Context->preference("PatronsPerPage") || 20, +); output_html_with_http_headers $query, $cookie, $template->output;