/** * Gets newsletters link * * @param int $newsletter_id Newsletter identifier * @param string $type Newsletter type * @return array Breadcrumb link data */ function fn_br_newsletters_link($newsletter_id, $type) { if (empty($type) && !empty($newsletter_id)) { $data = fn_get_newsletter_data($newsletter_id); $type = !empty($data['type']) ? $data['type'] : ''; } if ($type == NEWSLETTER_TYPE_AUTORESPONDER) { $object_name = __('autoresponders'); } elseif ($type == NEWSLETTER_TYPE_TEMPLATE) { $object_name = __('templates'); } else { $object_name = __('newsletters'); } $result = array('title' => $object_name, 'link' => "newsletters.manage?type={$type}"); return $result; }
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']); } }
fn_set_notification('W', __('warning'), __('warning_newsletter_no_recipients')); return array(CONTROLLER_STATUS_OK, 'newsletters.manage'); // return template body } elseif ($mode == 'render') { if (defined('AJAX_REQUEST')) { $template_id = !empty($_REQUEST['template_id']) ? intval($_REQUEST['template_id']) : 0; if ($template_id) { $template = fn_get_newsletter_data($template_id, DESCR_SL); Registry::get('ajax')->assign('template', $template['body_html']); } exit; } // newsletter update page } elseif ($mode == 'update') { $newsletter_id = !empty($_REQUEST['newsletter_id']) ? intval($_REQUEST['newsletter_id']) : 0; $newsletter_data = fn_get_newsletter_data($newsletter_id, DESCR_SL); if (empty($newsletter_data)) { return array(CONTROLLER_STATUS_NO_PAGE); } $campaigns = db_get_hash_array("SELECT * FROM ?:newsletter_campaigns AS n LEFT JOIN ?:common_descriptions AS d ON n.campaign_id = d.object_id AND d.lang_code = ?s WHERE d.object_holder = 'newsletter_campaigns' AND n.status = 'A'", 'campaign_id', DESCR_SL); Registry::get('view')->assign('newsletter_campaigns', $campaigns); $links = db_get_array("SELECT * FROM ?:newsletter_links WHERE newsletter_id=?i", $newsletter_id); Registry::get('view')->assign('newsletter_links', $links); Registry::get('view')->assign('newsletter', $newsletter_data); list($newsletter_templates) = fn_get_newsletters(array('type' => NEWSLETTER_TYPE_TEMPLATE, 'only_available' => false), 0, DESCR_SL); Registry::get('view')->assign('newsletter_templates', $newsletter_templates); Registry::get('view')->assign('newsletter_type', $newsletter_data['type']); Registry::get('view')->assign('placeholders', $placeholders[$newsletter_data['type']]); $mailing_lists = db_get_hash_array("SELECT * FROM ?:mailing_lists AS m INNER JOIN ?:common_descriptions AS d ON m.list_id = d.object_id WHERE d.object_holder = 'mailing_lists' AND d.lang_code = ?s", 'list_id', DESCR_SL); if (fn_allowed_for('ULTIMATE')) { $mailing_lists = fn_get_shared_companies($mailing_lists);
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); } }