X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=members%2Fmembers-home.pl;h=659ce8e0f02a9fda9b4361fa9403c3e809bd2e02;hb=0693052bfcd0b4259eb620233550f81eab49eabd;hp=964fdb7442eb073417a96636ecb13683ee052e1b;hpb=ef8171ba425f766b67d9e139194b6a8d570e301e;p=koha.git diff --git a/members/members-home.pl b/members/members-home.pl index 964fdb7442..659ce8e0f0 100755 --- a/members/members-home.pl +++ b/members/members-home.pl @@ -3,83 +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., -# 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; +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; -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;