e.g. array('search' => full_text_replace, 'field' => field_name, 'default' => default_value, 'field_id' => field_id);
public static search ( &$body ) |
require_once Pommo::$_baseDir . 'classes/Pommo_Helper_Personalize.php'; if (!isset(Pommo::$_session['personalization'])) { Pommo::$_session['personalization'] = FALSE; $matches = array(); preg_match('/\\[\\[[^\\]]+]]/', $mailing->_mailing['body'], $matches); if (!empty($matches)) { Pommo::$_session['personalization'] = TRUE; } preg_match('/\\[\\[[^\\]]+]]/', $mailing->_mailing['altbody'], $matches); if (!empty($matches)) { Pommo::$_session['personalization'] = TRUE; } // cache personalizations in session if (Pommo::$_session['personalization']) { Pommo::$_session['personalization_body'] = Pommo_Helper_Personalize::search($mailing->_mailing['body']); Pommo::$_session['personalization_altbody'] = Pommo_Helper_Personalize::search($mailing->_mailing['altbody']); } } /********************************** * PREPARE THE MAILER *********************************/ $html = $mailing->_mailing['ishtml'] == 'on' ? TRUE : FALSE; $mailer = new Pommo_Mailer($mailing->_mailing['fromname'], $mailing->_mailing['fromemail'], $mailing->_mailing['frombounce'], $config['list_exchanger'], NULL, $mailing->_mailing['charset'], Pommo::$_session['personalization']); if (!$mailer->prepareMail($mailing->_mailing['subject'], $mailing->_mailing['body'], $html, $mailing->_mailing['altbody'], $mailing->_mailing['attachments'])) { $mailer->shutdown('*** ERROR *** prepareMail() returned errors.'); } // Set appropriate SMTP relay if ($config['list_exchanger'] == 'smtp') { $mailer->setRelay(unserialize($config['smtp_1'])); $mailer->SMTPKeepAlive = TRUE; }
$input = current(Pommo_Mailing::get(array('id' => $_GET['mail_id']))); // attempt personalizations if (isset($_GET['email']) && isset($_GET['code'])) { $subscriber = current(Pommo_Subscribers::get(array('email' => $_GET['email'], 'status' => 1))); if ($_GET['code'] == Pommo_Subscribers::getActCode($subscriber)) { require_once Pommo::$_baseDir . 'classes/Pommo_Helper_Personalize.php'; // require once here so that mailer can use $matches = array(); preg_match('/\\[\\[[^\\]]+]]/', $input['body'], $matches); if (!empty($matches)) { $pBody = Pommo_Helper_Personalize::search($input['body']); $input['body'] = Pommo_Helper_Personalize::replace($input['body'], $subscriber, $pBody); } preg_match('/\\[\\[[^\\]]+]]/', $input['altbody'], $matches); if (!empty($matches)) { $pAltBody = Pommo_Helper_Personalize::search($input['altbody']); $input['altbody'] = Pommo_Helper_Personalize::replace($input['altbody'], $subscriber, $pAltBody); } } } $view->assign($input); $view->display('inc/mailing'); Pommo::kill(); } /********************************** VALIDATION ROUTINES *********************************/ if (!is_numeric($state['limit']) || $state['limit'] < 10 || $state['limit'] > 200) { $state['limit'] = 100; } if ($state['order'] != 'asc' && $state['order'] != 'desc') {