to_group
[Pman.Core] / DataObjects / Core_email.php
index 03b9072..9856d62 100644 (file)
@@ -381,7 +381,15 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject
             }
             $contents['rcpts'] = $admin;
         }
-        
+        if (empty($contents['rcpts']) && $this->to_group_id > 0) {
+           $members = $this->to_group()->members();
+           $contents['rcpts'] = array();
+           foreach($this->to_group()->members() as $m) {
+               $contents['rcpts'][] = $m->email;
+           }
+           var_dump($contents['rcpts']);
+           
+       }
         //subject replacement
         if(empty($contents['subject'])){
            $contents['subject'] = $this->subject; 
@@ -675,5 +683,45 @@ Content-Transfer-Encoding: 7bit
     }
     
     
+    function testData($person, $dt , $core_notify)
+    {
+        
+       // should return the formated email???
+       $pg = HTML_FlexyFramework::get()->page;
+       
+        
+       
+       
+        if(empty($this->test_class)){
+            $pg->jerr("[{$this->name}] does not has test class");
+        }
+        
+        require_once "{$this->test_class}.php";
+        
+        $cls = str_replace('/', '_', $this->test_class);
+        
+        $x = new $cls;
+        
+        $method = "test_{$this->name}";
+        
+        if(!method_exists($x, $method)){
+            $pg->jerr("{$method} does not exists in {$cls}");
+        }
+        
+        $content = $x->{$method}($this, $person);
+        $content['to'] = $person->getEmailFrom();
+
+        $content['bcc'] = array();
+       $data = $this->toMailerData($content);
+       return $data;
+        
+           
+    }
     
+    function to_group()
+    {
+       $g = DB_DataObject::Factory('core_group');
+       $g->get($this->to_group_id);
+       return $g;
+    }
 }