DataObjects/Core_email.php
[Pman.Core] / DataObjects / Core_email.php
index bf14668..63dab85 100644 (file)
@@ -41,6 +41,18 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject
                 $tn.subject LIKE '%{$this->escape($q['search']['nameortitle'])}%'
             ");
         }
+        
+        $this->selectAdd("
+           (
+            SELECT 
+                count(user_id) 
+            FROM 
+                core_group_member 
+            WHERE 
+                to_group_id = core_group_member.group_id
+            ) 
+            AS group_member_count
+        ");
     }
     
     function beforeDelete($dependants_array, $roo)
@@ -61,6 +73,18 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject
             $this->makeCopy($roo);
             
         }
+        
+        if ($this->to_group != -1) {
+                  
+            $c = DB_DataObject::factory('core_group_member');            
+            $c->whereAdd("group_id = {$this->to_group}");
+                        
+            if (!$c->find(true)) {
+                if (!empty($request['_ignore_group_count']) && !$request['_ignore_group_count']) {
+                            $roo->jerr('not found');
+                      }                                        
+            }
+        }
     }
     
     function makeCopy($roo)
@@ -346,9 +370,9 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject
            $contents['subject'] = $this->subject; 
         }
 
-        if (!empty($content['subject_replace'])) {
-            foreach ($content['mapping'] as $pattern => $replace) {
-                $content['subject'] = preg_replace($pattern,$replace,$content['subject']);
+        if (!empty($contents['subject_replace'])) {
+            foreach ($contents['mapping'] as $pattern => $replace) {
+                $contents['subject'] = preg_replace($pattern,$replace,$contents['subject']);
             }
         }