public $owner_id;
public $is_system;
public $active;
- public $bcc_group;
+ public $bcc_group_id;
public $test_class;
-
-
+
/* the code above is auto generated do not remove the tag below */
###END_AUTOCODE
$tn.subject LIKE '%{$this->escape($q['search']['nameortitle'])}%'
");
}
+ $cgm = DB_DataObject::Factory('core_group_member')->tableName();;
+
+ $this->selectAdd("
+ (
+ SELECT
+ count(user_id)
+ FROM
+ {$cgm}
+ WHERE
+ to_group_id = {$cgm}.group_id
+ )
+ AS group_member_count,
+
+ (
+ SELECT
+ count(user_id)
+ FROM
+ {$cgm}
+ WHERE
+ bcc_group_id = {$cgm}.group_id
+ )
+ AS bcc_group_member_count
+ ");
}
function beforeDelete($dependants_array, $roo)
$this->makeCopy($roo);
}
+
+ if ($this->to_group_id != -1) {
+
+ $c = DB_DataObject::factory('core_group_member');
+ $c->group_id = $this->to_group_id;
+
+ 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));
+ }
+ }
+
+ }
}
function makeCopy($roo)
function toMailer($obj,$force=false)
{
-
-
require_once 'PEAR.php';
$p = new PEAR();
$contents = (array)$obj;
-
+
if(empty($this->id) && !empty($contents['template'])){
$this->get('name', $contents['template']);
}
-
- var_dump($contents['template']);exit;
+
if(empty($this->active)){
return $p->raiseError("template [{$contents['template']}] is Disabled");
// 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");
$contents['rcpts'] = $admin;
}
+ //subject replacement
if(empty($contents['subject'])){
$contents['subject'] = $this->subject;
}
+
+ if (!empty($contents['subject_replace'])) {
+ foreach ($contents['mapping'] as $pattern => $replace) {
+ $contents['subject'] = preg_replace($pattern,$replace,$contents['subject']);
+ }
+ }
if(!empty($contents['rcpts']) && is_array($contents['rcpts'])){
$contents['rcpts'] = implode(',', $contents['rcpts']);
$cfg = array_merge($contents['mailer_opts'], $cfg);
}
+ if(isset($contents['css_inline'])){
+ $cfg['css_inline'] = $contents['css_inline'];
+ }
+
$r = new Pman_Core_Mailer($cfg);
$imageCache = session_save_path() . '/email-cache-' . $ui['name'] . '/mail/' . $this->tableName() . '-' . $this->id . '-images.txt';
* DEPRICATED !!! - DO NOT USE THIS !!!
*
* use: toMailerData() -- to return the email data..
- * or toMailer($obj, false)->send()
+ * or
+ * $mailer = $core_email->toMailer($obj, false);
+ * $sent = is_a($mailer,'PEAR_Error') ? false : $mailer->send();
+
+ * toMailer($obj, false)->send()
*
*
*/