Import/Core_email.php
[Pman.Core] / Import / Core_email.php
1 <?php
2
3
4
5 require_once 'Pman.php';
6
7 class Pman_Hydra_Import_Core_email extends Pman 
8 {
9     static $cli_desc = "Import an email into core_email template"; 
10     
11     static $cli_opts = array(
12         'file' => array(
13             'desc' => 'File to import',
14             'short' => 'f',
15             'min' => 1,
16             'max' => 1,
17             
18         ),
19          
20     );
21     
22     function getAuth()
23     {
24         $ff = HTML_FlexyFramework::get();
25         
26         if (!$ff->cli) {
27             die("cli only");
28         }
29         
30     }
31
32     function get($part='', $opts){
33         
34         
35         $template_name = preg_replace('/\.[a-z]+$/i',dirname($opts['file']),'');
36         
37         if (!file_exists($opts['file'])) {
38             $this->jerr("file does not exist : " . $opts['file']);
39         }
40         
41         
42         $c = DB_dataObject::factory('core_email');
43         $ret = $c->get('name',$template_name);
44         if($ret ) {
45             $this->jerr("we do not support updating the files ... - especially if the user has changed them!!");
46         }
47         $mailtext = file_get_contents($opts['file']);
48
49         require_once 'Mail/mimeDecode.php';  
50         $decoder = new Mail_mimeDecode($mailtext);
51         $parts = $decoder->getSendArray();
52         $from_name = explode(" ", $parts[0])[0];
53         $from_email = explode(" ", $parts[0])[1];
54         $c->setFrom(array(
55             'from_name'     => $from_name,
56             'from_email'    => $from_email,
57             'subject'       => $parts[1]['Subject'],
58             'name'          => $template_name,
59             'bodytext'      => $parts[2]
60         ));
61         $c->insert();
62         
63         die("done\n");
64     }
65 }