public $owner_id;
public $is_system;
public $active;
- public $bcc_group;
+ public $bcc_group_id;
public $test_class;
$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
");
}
}
- if ($this->to_group != -1) {
+ if ($this->to_group_id != -1) {
$c = DB_DataObject::factory('core_group_member');
- $c->whereAdd("group_id = {$this->to_group}");
+ $c->group_id = $this->to_group_id;
- if (!$c->find(true)) {
- if (empty($request['_ignore_group_count'])) {
- $roo->jerr('no_member',array('errcode'=> 100));
- }
-
- if (!$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));
+ }
+ }
+
}
}
// 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");