示例#1
0
 public function update($id, $params)
 {
     $status = Response::STATUS_BAD_REQUEST;
     $data = array();
     unset($params['subscriber_id']);
     $lang_code = $this->safeGet($params, 'lang_code', DEFAULT_LANGUAGE);
     $subscriber_id = fn_em_update_subscriber($params, $id, $lang_code);
     if ($subscriber_id) {
         $status = Response::STATUS_OK;
         $data = array('subscriber_id' => $subscriber_id);
     }
     return array('status' => $status, 'data' => $data);
 }
示例#2
0
* and use this program.                                                    *
*                                                                          *
****************************************************************************
* PLEASE READ THE FULL TEXT  OF THE SOFTWARE  LICENSE   AGREEMENT  IN  THE *
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE.            *
****************************************************************************/
use Tygh\EmailSync;
use Tygh\Registry;
use Tygh\Settings;
if (!defined('BOOTSTRAP')) {
    die('Access denied');
}
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    $suffix = '.manage';
    if ($mode == 'update') {
        $subscriber_id = fn_em_update_subscriber($_REQUEST['subscriber_data'], $_REQUEST['subscriber_id']);
    }
    if ($mode == 'm_delete') {
        fn_em_delete_subscribers($_REQUEST['subscriber_ids']);
    }
    if ($mode == 'export_range') {
        if (!empty($_REQUEST['subscriber_ids'])) {
            if (empty(Tygh::$app['session']['export_ranges'])) {
                Tygh::$app['session']['export_ranges'] = array();
            }
            if (empty(Tygh::$app['session']['export_ranges']['subscribers'])) {
                Tygh::$app['session']['export_ranges']['subscribers'] = array('pattern_id' => 'em_subscribers');
            }
            Tygh::$app['session']['export_ranges']['subscribers']['data'] = array('subscriber_id' => $_REQUEST['subscriber_ids']);
            unset($_REQUEST['redirect_url']);
            return array(CONTROLLER_STATUS_REDIRECT, 'exim.export?section=subscribers&pattern_id=em_subscribers');
示例#3
0
function fn_em_subscribe_email($email, $data = array())
{
    $subscriber_id = fn_em_update_subscriber(array('email' => $email, 'name' => !empty($data['name']) ? $data['name'] : '', 'status' => 'P'), 0, false);
    if (!empty($subscriber_id)) {
        if (Registry::get('addons.email_marketing.em_double_opt_in') == 'Y') {
            Tygh::$app['view']->assign('notification_msg', __('email_marketing.text_subscription_pending'));
            $msg = Tygh::$app['view']->fetch('addons/email_marketing/common/notification.tpl');
            fn_set_notification('I', __('email_marketing.subscription_pending'), $msg);
            Mailer::sendMail(array('to' => $email, 'from' => 'default_company_newsletter_email', 'data' => array('url' => fn_url('em_subscribers.confirm?ekey=' . fn_generate_ekey($email, 'E', SECONDS_IN_DAY))), 'tpl' => 'addons/email_marketing/confirmation.tpl'));
        } else {
            if (fn_em_confirm_subscription($email)) {
                Tygh::$app['view']->assign('notification_msg', __('email_marketing.text_subscription_confirmed'));
                $msg = Tygh::$app['view']->fetch('addons/email_marketing/common/notification.tpl');
                fn_set_notification('I', __('email_marketing.subscription_confirmed'), $msg);
            } else {
                fn_em_delete_subscribers_by_email(array($email));
            }
        }
    }
}
示例#4
0
*                                                                          *
* This  is  commercial  software,  only  users  who have purchased a valid *
* license  and  accept  to the terms of the  License Agreement can install *
* and use this program.                                                    *
*                                                                          *
****************************************************************************
* PLEASE READ THE FULL TEXT  OF THE SOFTWARE  LICENSE   AGREEMENT  IN  THE *
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE.            *
****************************************************************************/
use Tygh\Registry;
if (!defined('BOOTSTRAP')) {
    die('Access denied');
}
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
    if ($mode == 'customer_info' || $mode == 'update_steps') {
        if (!empty($_SESSION['cart']['user_data']['email'])) {
            $name = fn_em_get_subscriber_name();
            $email = $_SESSION['cart']['user_data']['email'];
            $subscriber_data = fn_em_get_subscriber_data($email);
            if (!empty($subscriber_data) && $subscriber_data['name'] != $name) {
                fn_em_update_subscriber(array('name' => $name), $subscriber_data['subscriber_id']);
            }
        }
    }
    return;
}
if ($mode == 'checkout') {
    if (Registry::get('addons.email_marketing.em_show_on_checkout') == 'Y' && !empty($_SESSION['cart']['user_data']['email']) && !fn_em_is_email_subscribed($_SESSION['cart']['user_data']['email'])) {
        Tygh::$app['view']->assign('show_subscription_checkbox', true);
    }
}
示例#5
0
 public function import()
 {
     $subscribers = $this->service->import();
     if (!empty($subscribers)) {
         foreach ($subscribers as $subscriber) {
             $subscriber['status'] = 'A';
             fn_em_update_subscriber($subscriber, 0, false);
         }
     }
     return true;
 }