X-Git-Url: http://koha-dev.rot13.org:8081/gitweb/?a=blobdiff_plain;ds=sidebyside;f=members%2Fpaycollect.pl;h=2e88efcf6cfad681c8a8a13dbbd1e32f7ad35096;hb=5d6c092921919526ade501facb1220f8a108a08f;hp=d66702ec727d38df429e2adb743094d890fdbb04;hpb=e901ae15de6717f8594bd80ecfb0c5e8a23b8af5;p=koha_fer diff --git a/members/paycollect.pl b/members/paycollect.pl index d66702ec72..2e88efcf6c 100755 --- a/members/paycollect.pl +++ b/members/paycollect.pl @@ -19,6 +19,7 @@ use strict; use warnings; +use URI::Escape; use C4::Context; use C4::Auth; use C4::Output; @@ -30,12 +31,13 @@ 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', query => $input, type => 'intranet', authnotrequired => 0, - flagsrequired => { borrowers => 1, updatecharges => 1 }, + flagsrequired => { borrowers => 1, updatecharges => $updatecharges_permissions }, debug => 1, } ); @@ -55,6 +57,7 @@ my $individual = $input->param('pay_individual'); my $writeoff = $input->param('writeoff_individual'); my $select_lines = $input->param('selected'); my $select = $input->param('selected_accts'); +my $payment_note = uri_unescape $input->param('payment_note'); my $accountno; my $accountlines_id; if ( $individual || $writeoff ) { @@ -85,12 +88,14 @@ if ( $individual || $writeoff ) { description => $description, notify_id => $notify_id, notify_level => $notify_level, + payment_note => $payment_note, ); } elsif ($select_lines) { $total_due = $input->param('amt'); $template->param( selected_accts => $select_lines, - amt => $total_due + amt => $total_due, + selected_accts_notes => $input->param('notes'), ); } @@ -104,10 +109,10 @@ if ( $total_paid and $total_paid ne '0.00' ) { if ($individual) { if ( $total_paid == $total_due ) { makepayment( $accountlines_id, $borrowernumber, $accountno, $total_paid, $user, - $branch ); + $branch, $payment_note ); } else { makepartialpayment( $accountlines_id, $borrowernumber, $accountno, $total_paid, - $user, $branch ); + $user, $branch, $payment_note ); } print $input->redirect( "/cgi-bin/koha/members/pay.pl?borrowernumber=$borrowernumber"); @@ -117,8 +122,8 @@ if ( $total_paid and $total_paid ne '0.00' ) { $select = $1; # ensure passing no junk } my @acc = split /,/, $select; - recordpayment_selectaccts( $borrowernumber, $total_paid, - \@acc ); + my $note = $input->param('selected_accts_notes'); + recordpayment_selectaccts( $borrowernumber, $total_paid, \@acc, $note ); } else { recordpayment( $borrowernumber, $total_paid ); } @@ -141,6 +146,7 @@ $template->param( borrower => $borrower, total => $total_due, activeBorrowerRelationship => (C4::Context->preference('borrowerRelationship') ne ''), + RoutingSerials => C4::Context->preference('RoutingSerials'), ); output_html_with_http_headers $input, $cookie, $template->output; @@ -164,7 +170,7 @@ sub borrower_add_additional_fields { } elsif ( $b_ref->{category_type} eq 'A' ) { $b_ref->{adultborrower} = 1; } - my ( $picture, $dberror ) = GetPatronImage( $b_ref->{cardnumber} ); + my ( $picture, $dberror ) = GetPatronImage( $b_ref->{borrowernumber} ); if ($picture) { $b_ref->{has_picture} = 1; }