@@ -, +, @@ - Create a list with non-latin characters in the name. - Add some items containing non-latin characters in their content. - Send the list by email - Add some items containing non-latin characters in their content to your cart.. - Send the cart by email --- basket/sendbasket.pl | 4 +++- opac/opac-sendbasket.pl | 4 +++- opac/opac-sendshelf.pl | 4 +++- virtualshelves/sendshelf.pl | 7 ++++--- 4 files changed, 13 insertions(+), 6 deletions(-) --- a/basket/sendbasket.pl +++ a/basket/sendbasket.pl @@ -115,6 +115,7 @@ if ( $email_add ) { if ( $template_res =~ /(.*)/s ) { $mail{subject} = $1; $mail{subject} =~ s|\n?(.*)\n?|$1|; + $mail{subject} = Encode::encode("UTF-8", $mail{subject}); } else { $mail{'subject'} = "no subject"; } @@ -122,6 +123,7 @@ if ( $email_add ) { if ( $template_res =~ /
(.*)/s ) { $email_header = $1; $email_header =~ s|\n?(.*)\n?|$1|; + $email_header = encode_qp(Encode::encode("UTF-8", $email_header)); } my $email_file = "basket.txt"; @@ -133,7 +135,7 @@ if ( $email_add ) { if ( $template_res =~ /(.*)/s ) { $body = $1; $body =~ s|\n?(.*)\n?|$1|; - $body = encode("UTF-8", encode_qp($body)); + $body = encode_qp(Encode::encode("UTF-8", $body)); } my $boundary = "====" . time() . "===="; --- a/opac/opac-sendbasket.pl +++ a/opac/opac-sendbasket.pl @@ -131,6 +131,7 @@ if ( $email_add ) { if ( $template_res =~ /(.*)/s ) { $mail{subject} = $1; $mail{subject} =~ s|\n?(.*)\n?|$1|; + $mail{subject} = Encode::encode("UTF-8", $mail{subject}); } else { $mail{'subject'} = "no subject"; } @@ -138,6 +139,7 @@ if ( $email_add ) { if ( $template_res =~ /
(.*)/s ) { $email_header = $1; $email_header =~ s|\n?(.*)\n?|$1|; + $email_header = encode_qp(Encode::encode("UTF-8", $email_header)); } my $email_file = "basket.txt"; @@ -149,7 +151,7 @@ if ( $email_add ) { if ( $template_res =~ /(.*)/s ) { $body = $1; $body =~ s|\n?(.*)\n?|$1|; - $body = encode("UTF-8", encode_qp($body)); + $body = encode_qp(Encode::encode("UTF-8", $body)); } $mail{body} = $body; --- a/opac/opac-sendshelf.pl +++ a/opac/opac-sendshelf.pl @@ -130,11 +130,13 @@ if ( $email ) { $mail{subject} =~ s|\n?(.*)\n?|$1|; } else { $mail{'subject'} = "no subject"; } + $mail{subject} = Encode::encode("UTF-8", $mail{subject}); my $email_header = ""; if ( $template_res =~ /
(.*)/s ) { $email_header = $1; $email_header =~ s|\n?(.*)\n?|$1|; + $email_header = encode_qp(Encode::encode("UTF-8", $email_header)); } my $email_file = "list.txt"; @@ -146,7 +148,7 @@ if ( $email ) { if ( $template_res =~ /(.*)/s ) { $body = $1; $body =~ s|\n?(.*)\n?|$1|; - $body = encode("UTF-8", encode_qp($body)); + $body = encode_qp(Encode::encode("UTF-8", $body)); } my $boundary = "====" . time() . "===="; --- a/virtualshelves/sendshelf.pl +++ a/virtualshelves/sendshelf.pl @@ -21,7 +21,7 @@ use strict; use warnings; use CGI qw ( -utf8 ); -use Encode qw(encode); +use Encode qw( encode ); use Carp; use Mail::Sendmail; @@ -117,7 +117,7 @@ if ( $email ) { # Analysing information and getting mail properties if ( $template_res =~ /(.*)/s ) { - $mail{subject} = $1; + $mail{'subject'} = Encode::encode("UTF-8", $1); $mail{subject} =~ s|\n?(.*)\n?|$1|; } else { $mail{'subject'} = "no subject"; } @@ -126,6 +126,7 @@ if ( $email ) { if ( $template_res =~ /
(.*)/s ) { $email_header = $1; $email_header =~ s|\n?(.*)\n?|$1|; + $email_header = encode_qp(Encode::encode("UTF-8", $email_header)); } my $email_file = "list.txt"; @@ -137,7 +138,7 @@ if ( $email ) { if ( $template_res =~ /(.*)/s ) { $body = $1; $body =~ s|\n?(.*)\n?|$1|; - $body = encode("UTF-8", encode_qp($body)); + $body = decode_qp(Encode::encode("UTF-8", $1)); } my $boundary = "====" . time() . "===="; --