function fn_send_confirmation_email($subscriber_id, $list_id, $email, $lang_code = CART_LANGUAGE) { $list = fn_get_mailing_list_data($list_id); if ($list['register_autoresponder']) { $autoresponder = fn_get_newsletter_data($list['register_autoresponder']); $body = $autoresponder['body_html']; $body = fn_render_newsletter($body, array('list_id' => $list_id, 'subscriber_id' => $subscriber_id, 'email' => $email)); if (AREA == 'A') { fn_echo(__('sending_email_to', array('[email]' => $email)) . '<br />'); } fn_send_newsletter($email, $list, $autoresponder['newsletter'], $body, array(), $lang_code, $list['reply_to']); } }
function fn_send_confirmation_email($subscriber_id, $list_id, $email, $format = NEWSLETTER_FORMAT_TXT, $lang_code = CART_LANGUAGE) { static $msg; if (empty($msg)) { $msg = fn_get_lang_var('sending_email_to'); } $list = fn_get_mailing_list_data($list_id); if ($list['register_autoresponder']) { $autoresponder = fn_get_newsletter_data($list['register_autoresponder']); if ($format == NEWSLETTER_FORMAT_TXT) { $body = $autoresponder['body_txt']; } else { $body = $autoresponder['body_html']; } $body = fn_render_newsletter($body, array('list_id' => $list_id, 'subscriber_id' => $subscriber_id, 'email' => $email)); if (AREA == 'A') { fn_echo(str_replace('[email]', $email, $msg) . '<br />'); } fn_send_newsletter($email, $list, $autoresponder['newsletter'], $body, array(), $lang_code, $list['reply_to'], $format == NEWSLETTER_FORMAT_HTML); } }
$n = array(); foreach (fn_get_translation_languages() as $lang_code => $v) { $n[$lang_code] = fn_get_newsletter_data($newsletter_id, $lang_code); $n[$lang_code]['body_html'] = fn_rewrite_links($n[$lang_code]['body_html'], $newsletter_id, $n[$lang_code]['campaign_id']); } $newsletter_data[] = $n; } foreach (array_splice($data['recipients'], 0, Registry::get('addons.newsletters.newsletters_per_pass')) as $subscriber) { foreach ($newsletter_data as $newsletter) { $body = fn_render_newsletter($newsletter[$subscriber['lang_code']]['body_html'], $subscriber); fn_echo(__('sending_email_to', array('[email]' => $subscriber['email'])) . '<br />'); if (!empty($newsletter[$subscriber['lang_code']]['newsletter_multiple'])) { $subjects = explode("\n", $newsletter[$subscriber['lang_code']]['newsletter_multiple']); $newsletter[$subscriber['lang_code']]['newsletter'] = trim($subjects[rand(0, count($subjects) - 1)]); } fn_send_newsletter($subscriber['email'], $subscriber, $newsletter[$subscriber['lang_code']]['newsletter'], $body, array(), $subscriber['lang_code'], $subscriber['reply_to']); } } if (!empty($data['recipients'])) { fn_set_storage_data('newsletters_batch_' . $_REQUEST['key'], serialize($data)); return array(CONTROLLER_STATUS_OK, 'newsletters.batch_send?key=' . $_REQUEST['key']); } else { fn_set_storage_data('newsletters_batch_' . $_REQUEST['key']); fn_set_notification('N', __('notice'), __('text_newsletter_sent')); $suffix = sizeof($data['send_ids']) == 1 ? ".update?newsletter_id=" . array_pop($data['send_ids']) : '.manage'; return array(CONTROLLER_STATUS_OK, 'newsletters' . $suffix); } } fn_set_notification('W', __('warning'), __('warning_newsletter_no_recipients')); return array(CONTROLLER_STATUS_OK, 'newsletters.manage'); // return template body
} foreach (array_splice($data['recipients'], 0, Registry::get('addons.news_and_emails.newsletters_per_pass')) as $subscriber) { foreach ($newsletter_data as $newsletter) { if ($subscriber['format'] == NEWSLETTER_FORMAT_TXT || empty($newsletter[$subscriber['lang_code']]['body_html']) && !empty($subscriber['users_list']) && $subscriber['users_list'] == 'Y') { $body = fn_render_newsletter($newsletter[$subscriber['lang_code']]['body_txt'], $subscriber); $subscriber['format'] = NEWSLETTER_FORMAT_TXT; } else { $body = fn_render_newsletter($newsletter[$subscriber['lang_code']]['body_html'], $subscriber); } fn_echo(str_replace('[email]', $subscriber['email'], fn_get_lang_var('sending_email_to')) . '<br />'); fn_override_mailer(); if (!empty($newsletter[$subscriber['lang_code']]['newsletter_multiple'])) { $subjects = explode("\n", $newsletter[$subscriber['lang_code']]['newsletter_multiple']); $newsletter[$subscriber['lang_code']]['newsletter'] = trim($subjects[rand(0, count($subjects) - 1)]); } fn_send_newsletter($subscriber['email'], $subscriber, $newsletter[$subscriber['lang_code']]['newsletter'], $body, array(), $subscriber['lang_code'], $subscriber['reply_to'], $subscriber['format'] == NEWSLETTER_FORMAT_HTML); fn_restore_mailer(); } } if (!empty($data['recipients'])) { fn_put_contents(DIR_COMPILED . $_REQUEST['cache_file'], serialize($data)); return array(CONTROLLER_STATUS_OK, "newsletters.batch_send?cache_file=" . $_REQUEST['cache_file']); } else { fn_rm(DIR_COMPILED . $_REQUEST['cache_file']); fn_set_notification('N', fn_get_lang_var('notice'), fn_get_lang_var('text_newsletter_sent')); $suffix = sizeof($data['send_ids']) == 1 ? ".update?newsletter_id=" . array_pop($data['send_ids']) : '.manage'; return array(CONTROLLER_STATUS_OK, "newsletters{$suffix}"); } } fn_set_notification('W', fn_get_lang_var('warning'), fn_get_lang_var('warning_newsletter_no_recipients')); return array(CONTROLLER_STATUS_OK, "newsletters.manage");