#
# 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 <http://www.gnu.org/licenses>.
use strict;
use warnings;
use C4::Context;
use C4::Auth;
use C4::Output;
-use CGI;
+use CGI qw ( -utf8 );
use C4::Members;
+use C4::Members::Attributes qw(GetBorrowerAttributes);
use C4::Accounts;
use C4::Koha;
use C4::Branch;
my $input = CGI->new();
+my $updatecharges_permissions = $input->param('writeoff_individual') ? 'writeoff' : 'remaining_permissions';
my ( $template, $loggedinuser, $cookie ) = get_template_and_user(
- { template_name => 'members/paycollect.tmpl',
+ { template_name => 'members/paycollect.tt',
query => $input,
type => 'intranet',
authnotrequired => 0,
- flagsrequired => { borrowers => 1, updatecharges => 1 },
+ flagsrequired => { borrowers => 1, updatecharges => $updatecharges_permissions },
debug => 1,
}
);
my $borrower = GetMember( borrowernumber => $borrowernumber );
my $user = $input->remote_user;
-# get account details
-my $branch = GetBranch( $input, GetBranches() );
+my $branch = C4::Context->userenv->{'branch'};
my ( $total_due, $accts, $numaccts ) = GetMemberAccountRecords($borrowernumber);
my $total_paid = $input->param('paid');
my $note = $input->param('selected_accts_notes');
recordpayment_selectaccts( $borrowernumber, $total_paid, \@acc, $note );
} else {
- recordpayment( $borrowernumber, $total_paid );
+ my $note = $input->param('selected_accts_notes');
+ recordpayment( $borrowernumber, $total_paid, '', $note );
}
# recordpayment does not return success or failure so lets redisplay the boraccount
borrower_add_additional_fields($borrower);
+$template->param(%$borrower);
+
$template->param(
borrowernumber => $borrowernumber, # some templates require global
borrower => $borrower,
total => $total_due,
activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''),
RoutingSerials => C4::Context->preference('RoutingSerials'),
+ ExtendedPatronAttributes => C4::Context->preference('ExtendedPatronAttributes'),
);
output_html_with_http_headers $input, $cookie, $template->output;
} elsif ( $b_ref->{category_type} eq 'A' ) {
$b_ref->{adultborrower} = 1;
}
- my ( $picture, $dberror ) = GetPatronImage( $b_ref->{borrowernumber} );
- if ($picture) {
- $b_ref->{has_picture} = 1;
+
+ my ($picture, $dberror) = GetPatronImage($borrower->{'borrowernumber'});
+ $template->param( picture => 1 ) if $picture;
+
+ if (C4::Context->preference('ExtendedPatronAttributes')) {
+ $b_ref->{extendedattributes} = GetBorrowerAttributes($borrowernumber);
}
$b_ref->{branchname} = GetBranchName( $b_ref->{branchcode} );