MessagePreview.php
[Pman.Core] / MessagePreview.php
1 <?php
2
3 require_once 'Pman.php';
4
5 class Pman_Core_MessagePreview extends Pman
6 {
7     var $masterTemplate = 'mail/MessagePreview.html';
8     
9     function getAuth()
10     {
11         if (HTML_FlexyFramework::get()->cli) {
12             return true;
13         }
14         $this->authUser = $this->getAuthUser();
15         if (!$this->authUser) {
16             return false;
17         }
18         return true;
19     }
20     
21     function get()
22     {
23         if(empty($_REQUEST['_id'])){
24             $this->jerr('id got error');
25         }
26         
27         $mlq = DB_DataObject::factory('core_mailing_list_message');
28         
29         $mlq->get($_REQUEST['_id']);
30         
31         $this->msg = $mlq;
32
33         $this->showHtml = isset($_REQUEST['_as_html']) ? true : false;
34         
35     }
36     
37     function post()
38     {
39         if(empty($_REQUEST['_id'])){
40             $this->jerr('id got error');
41         }
42         if(empty($_REQUEST['_action'])){
43             $this->jerr('preview type not set');
44         }
45         $mid = $_REQUEST['_id'];
46         
47         $cfg = HTML_FlexyFramework::get()->Pman_Crm;
48         
49        
50        
51         $q = DB_DataObject::factory('crm_mailing_list_queue');
52         $q->id = 'test-message-'. $mid;
53         $q->message_id = $mid;
54         $q->message_id_subject = $q->message()->subject;
55         $q->message_id_from_email = $cfg['from_email'];
56         $q->message_id_from_name = "Email Test"; 
57         
58         $q->cachedMailWithOutImages(true);
59         $r = $q->getMailerObject($this->authUser, false, false, true);
60         //print_r($r->toData());
61         $ret = $r->toData();
62         $images = file_get_contents(session_save_path() . '/email-cache-' . getenv('APACHE_RUN_USER') . '/mail/' . $q->id . '-images.txt');
63        // var_dump($images);exit;
64         
65         $ret['body'] = str_replace('%Images%', $images, $ret['body']);
66         
67         $sent = $r->send($ret);
68         if(!is_object($sent)){
69             $this->jok('SUCCESS');
70         }
71         $this->jerr('error!!:' . $sent->toString());
72         
73     }
74     
75 }