better error handling when sending a spool by email, #17620
[freeside.git] / FS / FS / Misc.pm
index 3b0de3d..096ec8a 100644 (file)
@@ -9,6 +9,7 @@ use IPC::Run qw( run timeout );   # for _pslatex
 use IPC::Run3; # for do_print... should just use IPC::Run i guess
 use File::Temp;
 use Tie::IxHash;
+use Encode;
 #do NOT depend on any FS:: modules here, causes weird (sometimes unreproducable
 #until on client machine) dependancy loops.  put them in FS::Misc::Something
 #instead
@@ -187,7 +188,7 @@ sub send_email {
     'Sender'     => $options{'from'},
     'Reply-To'   => $options{'from'},
     'Date'       => time2str("%a, %d %b %Y %X %z", $time),
-    'Subject'    => $options{'subject'},
+    'Subject'    => Encode::encode('MIME-Header', $options{'subject'}),
     'Message-ID' => "<$message_id>",
     @mimeargs,
   );
@@ -273,6 +274,7 @@ sub send_email {
     });
     $cust_msg->insert; # ignore errors
   }
+  $error;
    
 }
 
@@ -352,8 +354,8 @@ sub generate_email {
 
   $alternative->attach(
     'Type'        => 'text/plain',
-    #'Encoding'    => 'quoted-printable',
-    'Encoding'    => '7bit',
+    'Encoding'    => 'quoted-printable',
+    #'Encoding'    => '7bit',
     'Data'        => $data,
     'Disposition' => 'inline',
   );
@@ -374,7 +376,7 @@ sub generate_email {
                        '      '. encode_entities($return{'subject'}), 
                        '    </title>',
                        '  </head>',
-                       '  <body bgcolor="#e8e8e8">',
+                       '  <body bgcolor="#ffffff">',
                        @html_data,
                        '  </body>',
                        '</html>',
@@ -798,7 +800,7 @@ sub _pslatex {
 
 }
 
-=item print ARRAYREF
+=item do_print ARRAYREF
 
 Sends the lines in ARRAYREF to the printer.