Bug 8626: Fix encoding in cart emails for use of quoted-printable origin/new/bug_8626
authorKatrin Fischer <Katrin.Fischer.83@web.de>
Tue, 14 Aug 2012 06:02:59 +0000 (08:02 +0200)
committerPaul Poulain <paul.poulain@biblibre.com>
Wed, 29 Aug 2012 16:14:32 +0000 (18:14 +0200)
When using quoted-printable data needs to be encoded accordingly.

Content-Transfer-Encoding: quoted-printable

Without the patch = in URLs or data will be interpreted as the beginning
of a special character resulting in broken URLs.

To test:
- Check diacritics in records display correctly
- Check various URLs with = to make sure they all work correctly

Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
This is only a partial fix, as the subject line is not encoded,
but it is a huge improvement over what it was before.

Signed-off-by: Paul Poulain <paul.poulain@biblibre.com>
opac/opac-sendbasket.pl

index 5b38a54..da74745 100755 (executable)
@@ -134,7 +134,7 @@ if ( $email_add ) {
 
     my $email_header = "";
     if ( $template_res =~ /<HEADER>\n(.*)\n?<END_HEADER>/s ) {
-        $email_header = $1;
+        $email_header = encode_qp($1);
     }
 
     my $email_file = "basket.txt";
@@ -143,7 +143,7 @@ if ( $email_add ) {
     }
 
     if ( $template_res =~ /<MESSAGE>\n(.*)\n?<END_MESSAGE>/s ) {
-        $body = $1;
+        $body = encode_qp($1);
     }
 
     my $boundary = "====" . time() . "====";