From 9fa59b5f089f0cf3a768af60bee9a13dab2f6a7f Mon Sep 17 00:00:00 2001 From: emilyrose Date: Thu, 21 Sep 2023 14:33:44 -0400 Subject: [PATCH] Bug 34870: Unrecognized special characters MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The informations entered in the note are encoded and sent in the 'notes' parameter of the URL. The issue arises because paycollect.pl get the information using param(), which does not support encoded text. By using param_fetch(), we can retrieve the informations without any issues. TEST PLAN 1) Go to any patron profile > Accounting > Create manual invoice 2) Fill the fields and click the “Save” button 3) Click “Make a payment” 4) Select the created invoice and click on “+ Add note” 5) Enter special characters (e.g., éçö) 6) Click the “Write off selected” button 7) In the note field, you should see “�” symbols where the special characters are supposed to be 8) Apply the patch 9) Refresh the page; now the special characters display correctly --- members/paycollect.pl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/members/paycollect.pl b/members/paycollect.pl index b189107f25..2c6fcacddc 100755 --- a/members/paycollect.pl +++ b/members/paycollect.pl @@ -104,7 +104,7 @@ if ( $pay_individual || $writeoff_individual ) { $template->param( selected_accts => $selected_lines, amt => $total_due, - selected_accts_notes => scalar $input->param('notes'), + selected_accts_notes => scalar $input->param_fetch('notes')->[0], # get the encoded value ); } -- 2.34.1