Bug 13757: (followup) Staff interface changes
[koha.git] / members / members-update.pl
1 #!/usr/bin/perl
2
3 # Parts Copyright Biblibre 2010
4 # This file is part of Koha.
5 #
6 # Koha is free software; you can redistribute it and/or modify it
7 # under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
10 #
11 # Koha is distributed in the hope that it will be useful, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with Koha; if not, see <http://www.gnu.org/licenses>.
18
19 use Modern::Perl;
20
21 use CGI qw ( -utf8 );
22
23 use C4::Auth;
24 use C4::Output;
25 use C4::Context;
26 use C4::Members;
27 use C4::Members::Attributes qw( GetBorrowerAttributes );
28 use Koha::Patron::Attributes;
29 use Koha::Patron::Modifications;
30
31 my $query = new CGI;
32
33 my ( $template, $loggedinuser, $cookie, $flags ) = get_template_and_user(
34     {
35         template_name   => "members/members-update.tt",
36         query           => $query,
37         type            => "intranet",
38         authnotrequired => 0,
39         flagsrequired   => { borrowers => 1 },
40         debug           => 1,
41     }
42 );
43
44 my $branch =
45   (      C4::Context->preference("IndependentBranchesPatronModifications")
46       || C4::Context->preference("IndependentBranches") )
47   && !$flags->{'superlibrarian'}
48   ? C4::Context->userenv()->{'branch'}
49   : undef;
50
51 my $pending_modifications =
52   Koha::Patron::Modifications->pending($branch);
53
54 my $borrowers;
55 foreach my $pm (@$pending_modifications) {
56     $borrowers->{ $pm->{borrowernumber} }
57         = GetMember( borrowernumber => $pm->{borrowernumber} );
58     my $patron_attributes = Koha::Patron::Attributes->search(
59         { borrowernumber => $pm->{borrowernumber} } );
60     $borrowers->{ $pm->{'borrowernumber'} }->{extended_attributes}
61         = $patron_attributes;
62 }
63
64 $template->param(
65     PendingModifications => $pending_modifications,
66     borrowers            => $borrowers
67 );
68
69 output_html_with_http_headers $query, $cookie, $template->output;
70
71 1;