if (!SmartyValidate::is_registered_form('exchanger') || empty($_POST)) { // ___ USER HAS NOT SENT FORM ___ SmartyValidate::register_form('exchanger', true); SmartyValidate::register_validator('email', 'email', 'isEmail', false, false, false, 'exchanger'); $vMsg = array(); $vMsg['email'] = Pommo::_T('Invalid email address'); $smarty->assign('vMsg', $vMsg); $dbvals = array('exchanger' => $exchanger, 'email' => $pommo->_config['admin_email']); $smarty->assign($dbvals); } else { // ___ USER HAS SENT FORM ___ /********************************** JSON OUTPUT INITIALIZATION *********************************/ Pommo::requireOnce($pommo->_baseDir . 'inc/classes/json.php'); $json = new PommoJSON(); if (SmartyValidate::is_valid($_POST, 'exchanger')) { // __ FORM IS VALID Pommo::requireOnce($pommo->_baseDir . 'inc/helpers/messages.php'); $msg = PommoHelperMessages::testExchanger($_POST['email'], $exchanger) ? Pommo::_T('Mail Sent.') : Pommo::_T('Error Sending Mail'); $json->success($msg); } else { // __ FORM NOT VALID $json->addMsg(Pommo::_T('Please review and correct errors with your submission.')); $json->add('fieldErrors', $smarty->getInvalidFields('exchanger')); $json->fail(); } } $smarty->assign($_POST); $smarty->display('admin/setup/config/ajax.testexchanger.tpl'); Pommo::kill();
// check if email has unsubscribed if (!isset($_REQUEST['force'])) { $unsubscribed = PommoSubscriber::GetIDByEmail($_REQUEST['Email'], 0); if (!empty($unsubscribed)) { $json->fail(sprintf(Pommo::_T('%s has already unsubscribed. To add the subscriber anyway, check the box to force the addition.'), '<strong>' . $_REQUEST['Email'] . '</strong>')); } } // check if duplicate if (PommoHelper::isDupe($_POST['Email'])) { $json->fail(Pommo::_T('Email address already exists. Duplicates are not allowed.')); } $subscriber = array('email' => $_REQUEST['Email'], 'registered' => time(), 'ip' => $_SERVER['REMOTE_ADDR'], 'status' => 1, 'data' => $_POST['d']); $flag = false; if (!PommoValidate::subscriberData($subscriber['data'], array('active' => FALSE, 'ignore' => TRUE))) { if (!isset($_REQUEST['force'])) { $json->addMsg(Pommo::_T('Invalid or missing information.')); foreach ($logger->getAll() as $err) { $json->addErr($err); } $json->fail(); } $flag = true; $subscriber['flag'] = 9; // 9 for "update" } $key = PommoSubscriber::add($subscriber); if (!$key) { $json->fail(); } $json->addMsg(sprintf(Pommo::_T('Subscriber %s added!'), '<strong>' . $subscriber['email'] . '</strong>')); if ($flag) {