Import/Core_email.php
[Pman.Core] / Import / Core_email.php
index dd97eb6..486e865 100644 (file)
@@ -16,7 +16,14 @@ class Pman_Core_Import_Core_email extends Pman
             'max' => 1,
             
         ),
-         
+        'master' => array(
+            'desc' => 'Master template (wrapper to body)',
+            'short' => 'm',
+            'default' => '',
+            'min' => 1,
+            'max' => 1,
+            
+        ),
     );
     
     function getAuth()
@@ -31,6 +38,7 @@ class Pman_Core_Import_Core_email extends Pman
 
     function get($part='', $opts){
         
+       // DB_DataObject::debugLevel(1);
         
         $template_name = preg_replace('/\.[a-z]+$/i', '', basename($opts['file']));
         
@@ -46,24 +54,33 @@ class Pman_Core_Import_Core_email extends Pman
         
         $mailtext = file_get_contents($opts['file']);
 
-        require_once 'Mail/mimeDecode.php';  
+        require_once 'Mail/mimeDecode.php';
+        require_once 'Mail/RFC822.php';
+        
         $decoder = new Mail_mimeDecode($mailtext);
         $parts = $decoder->getSendArray();
+        if (is_a($parts,'PEAR_Error')) {
+            echo $parts->toString() . "\n";
+            exit;
+        }
         
         $headers = $parts[1];
         $from = new Mail_RFC822();
         $from_str = $from->parseAddressList($headers['From']);
-        var_dump($from_str);exit;
-        $from_name = explode(" ", $parts[0])[0];
-        $from_email = explode(" ", $parts[0])[1];
+        
+        $from_name  = trim($from_str[0]->personal, '"');
+        
+        $from_email = $from_str[0]->mailbox . '@' . $from_str[0]->host;
         
         
         $c->setFrom(array(
-            'from_name'     => trim($from_name, '"'),
+            'from_name'     => $from_name,
             'from_email'    => $from_email,
             'subject'       => $parts[1]['Subject'],
             'name'          => $template_name,
-            'bodytext'      => $parts[2]
+            'bodytext'      => $parts[2],
+            'updated_dt'     => date('Y-m-d H:i:s'),
+            'created_dt'     => date('Y-m-d H:i:s'),
         ));
         $c->insert();