X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=DataObjects%2FCore_email.php;h=929e60844b4a136321c53733a9bcc710996ba719;hb=08d117a420b13aa143cec18d23453edf577497c2;hp=49a513c45da464d26b53597a9b8d8534f8fc87d9;hpb=5814a45898f88db3acde15c779a8d84b140df1ce;p=Pman.Core diff --git a/DataObjects/Core_email.php b/DataObjects/Core_email.php index 49a513c4..929e6084 100644 --- a/DataObjects/Core_email.php +++ b/DataObjects/Core_email.php @@ -21,7 +21,7 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject public $owner_id; public $is_system; public $active; - public $bcc_group; + public $bcc_group_id; public $test_class; @@ -41,17 +41,28 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject $tn.subject LIKE '%{$this->escape($q['search']['nameortitle'])}%' "); } - + $cgm = DB_DataObject::Factory('core_group_member')->tableName();; + $this->selectAdd(" ( SELECT count(user_id) FROM - core_group_member + {$cgm} WHERE - to_group_id = core_group_member.group_id + to_group_id = {$cgm}.group_id ) - AS group_member_count + AS group_member_count, + + ( + SELECT + count(user_id) + FROM + {$cgm} + WHERE + bcc_group_id = {$cgm}.group_id + ) + AS bcc_group_member_count "); } @@ -79,9 +90,16 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject $c = DB_DataObject::factory('core_group_member'); $c->whereAdd("group_id = {$this->to_group}"); - if ($c->count() && empty($request['_ignore_group_count'])) { - $roo->jerr('no_member',array('errcode'=> 100)); + if (!$c->count()) { + if (!empty($request['_ignore_group_count'])) { + if (!$request['_ignore_group_count']) { + $roo->jerr('no_member',array('errcode'=> 100)); + } + } else { + $roo->jerr('no_member',array('errcode'=> 100)); + } } + } } @@ -344,8 +362,8 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject // fill in BCC - if (!empty($this->bcc_group) && empty($contents['rcpts_group'])) { - $admin = DB_DAtaObject::Factory('core_group')->lookupMembersByGroupId($this->bcc_group,'email'); + if (!empty($this->bcc_group_id) && empty($contents['rcpts_group'])) { + $admin = DB_DAtaObject::Factory('core_group')->lookupMembersByGroupId($this->bcc_group_id,'email'); if (empty($admin)) { return $p->raiseError("template [{$contents['template']}] - bcc group is empty");