Bug 8953 - opac-userupdate encoding issues
This script has various encoding problems: 1. parametars from CGI are not encoded in utf-8, so when they are compared with utf-8 strings from database every field with utf-8 characters will be reported in e-mail as changed 2. when sending e-mail, wide characters are passed to Mail::Sendmail which results in software error if edited field has utf-8 characters (because of first point, this happend if ANY fields has utf-8 chars) 3. when declaring encoding for outgoing e-mail utf-8 is more correct than just utf8 Test scenario: 1. open opac-userupdate and edit user which has utf-8 characters in at least one field (firstname and surname are common examples) 2. edit one of other fields and add utf-8 character to it 3. verify that e-mail with changes arrived with just edited field Signed-off-by: Mirko Tietgen <mirko@abunchofthings.net> Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
This commit is contained in:
parent
2b72cc9c21
commit
ca8f897cb0
1 changed files with 4 additions and 3 deletions
|
@ -22,6 +22,7 @@ use warnings;
|
|||
|
||||
use CGI;
|
||||
use Mail::Sendmail;
|
||||
use Encode;
|
||||
|
||||
use C4::Auth; # checkauth, getborrowernumber.
|
||||
use C4::Context;
|
||||
|
@ -102,7 +103,7 @@ EOF
|
|||
my $B_address2 = $borr->{'B_address2'} || '';
|
||||
|
||||
foreach my $field (@fields) {
|
||||
my $newfield = $query->param($field) || '';
|
||||
my $newfield = decode('utf-8',$query->param($field)) || '';
|
||||
my $borrowerfield = '';
|
||||
if($borr->{$field}) {
|
||||
$borrowerfield = $borr->{$field};
|
||||
|
@ -124,8 +125,8 @@ EOF
|
|||
To => $updateemailaddress,
|
||||
From => $patronemail,
|
||||
Subject => "User Request for update of Record.",
|
||||
Message => $message,
|
||||
'Content-Type' => 'text/plain; charset="utf8"',
|
||||
Message => encode('utf-8', $message), # Mail::Sendmail doesn't like wide characters
|
||||
'Content-Type' => 'text/plain; charset="utf-8"',
|
||||
);
|
||||
|
||||
if ( sendmail %mail ) {
|
||||
|
|
Loading…
Reference in a new issue