X-Git-Url: http://git.roojs.org/?a=blobdiff_plain;f=DataObjects%2FCore_email.php;h=5bdaa0639f37390d272f8b564398a34979921b81;hb=8f0410336f731d0d30d252ca7c966d12f14adefd;hp=4c547d688881b1d539b88bf33e5b6ff10cec8c84;hpb=75c3ca5b56d69c2fea4c89c4dd02e2e211c36e20;p=Pman.Core diff --git a/DataObjects/Core_email.php b/DataObjects/Core_email.php index 4c547d68..5bdaa063 100644 --- a/DataObjects/Core_email.php +++ b/DataObjects/Core_email.php @@ -263,6 +263,9 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject if (!$replace_links) { continue; } + if (empty($cfg)) { + continue; + } $link = DB_DataObject::factory('crm_mailing_list_link'); $link->setFrom(array( 'url' => $href @@ -360,10 +363,11 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject // fill in BCC - if (!empty($this->bcc_group_id) && empty($contents['rcpts_group'])) { - $admin = DB_DAtaObject::Factory('core_group')->lookupMembersByGroupId($this->bcc_group_id,'email'); + if (!empty($this->bcc_group_id) && $this->bcc_group_id > 0 && empty($contents['rcpts_group'])) { + $admin_grp = DB_DAtaObject::Factory('core_group')->load($this->bcc_group_id); + $admin = $admin_grp->members('email'); - if (empty($admin)) { + if (empty($admin) && $admin_grp->name != 'Empty Group') { // allow 'empty group mname' return $p->raiseError("template [{$contents['template']}] - bcc group is empty"); } @@ -385,8 +389,15 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject } if (!empty($contents['subject_replace'])) { - foreach ($contents['mapping'] as $pattern => $replace) { - $contents['subject'] = preg_replace($pattern,$replace,$contents['subject']); + if (isset($contents['mapping'])) { + foreach ($contents['mapping'] as $pattern => $replace) { + $contents['subject'] = preg_replace($pattern,$replace,$contents['subject']); + } + } + foreach ($contents as $k => $v) { + if (is_string($v)) { + $contents['subject'] = str_replace('{'. $k . '}', $v, $contents['subject']); + } } } @@ -476,7 +487,6 @@ class Pman_Core_DataObjects_Core_email extends DB_DataObject $r = $this->toMailer($obj, $force); if (is_a($r, 'PEAR_Error')) { - print_r('test');exit; return $r; } @@ -658,7 +668,7 @@ Content-Transfer-Encoding: 7bit if (!empty($master)) { $opts['master'] = $mail_template_dir . $master .'.html'; } - print_r($opts); + //print_r($opts); require_once 'Pman/Core/Import/Core_email.php'; $x = new Pman_Core_Import_Core_email(); $x->get('', $opts);