is_action()) { $controls->data = get_option('newsletter_main'); if (!isset($controls->data['roles'])) { $controls->data['roles'] = array(); if (!empty($controls->data['editor'])) $controls->data['roles'] = 'editor'; } } else { if ($controls->is_action('save')) { $errors = null; if (!isset($controls->data['roles'])) $controls->data['roles'] = array(); // Validation $controls->data['sender_email'] = $module->normalize_email($controls->data['sender_email']); if (!$module->is_email($controls->data['sender_email'])) { $controls->errors .= __('The sender email address is not correct.', 'newsletter') . '
'; } else { $controls->data['sender_email'] = $module->normalize_email($controls->data['sender_email']); } if (!$module->is_email($controls->data['return_path'], true)) { $controls->errors .= __('Return path email is not correct.', 'newsletter') . '
'; } else { $controls->data['return_path'] = $module->normalize_email($controls->data['return_path']); } if (!$module->is_email($controls->data['reply_to'], true)) { $controls->errors .= __('Reply to email is not correct.', 'newsletter') . '
'; } else { $controls->data['reply_to'] = $module->normalize_email($controls->data['reply_to']); } if (!empty($controls->data['contract_key'])) { $controls->data['contract_key'] = trim($controls->data['contract_key']); } if (empty($controls->errors)) { $module->merge_options($controls->data); $controls->add_message_saved(); $module->logger->debug('Main options saved'); } update_option('newsletter_log_level', $controls->data['log_level']); //$module->hook_newsletter_extension_versions(true); delete_transient("tnp_extensions_json"); delete_transient('newsletter_license_data'); } if ($controls->is_action('create')) { $page = array(); $page['post_title'] = 'Newsletter'; $page['post_content'] = '[newsletter]'; $page['post_status'] = 'publish'; $page['post_type'] = 'page'; $page['comment_status'] = 'closed'; $page['ping_status'] = 'closed'; $page['post_category'] = array(1); $current_language = $module->get_current_language(); $module->switch_language(''); // Insert the post into the database $page_id = wp_insert_post($page); $module->switch_language($current_language); $controls->data['page'] = $page_id; $module->merge_options($controls->data); $controls->messages = 'A new page has been created'; } } $license_data = $module->get_license_data(true); if (is_wp_error($license_data)) { $controls->errors .= esc_html('[' . $license_data->get_error_code()) . '] - ' . esc_html($license_data->get_error_message()); } else { if ($license_data !== false) { if ($license_data->expire == 0) { $controls->messages = 'Your FREE license is valid'; } elseif ($license_data->expire >= time()) { $controls->messages = 'Your license is valid and expires on ' . esc_html(date('Y-m-d', $license_data->expire)); } else { $controls->errors = 'Your license is expired on ' . esc_html(date('Y-m-d', $license_data->expire)); } } } $return_path = $module->options['return_path']; if (!empty($return_path)) { list($return_path_local, $return_path_domain) = explode('@', $return_path); $sender = $module->options['sender_email']; list($sender_local, $sender_domain) = explode('@', $sender); if ($sender_domain != $return_path_domain) { $controls->warnings[] = __('Your Return Path domain is different from your Sender domain. Providers may require them to match.', 'newsletter'); } } ?>

init(); ?>

panel_help('https://www.thenewsletterplugin.com/plugins/newsletter/newsletter-configuration') ?>

text_email('sender_email', 40); ?> help('https://www.thenewsletterplugin.com/plugins/newsletter/newsletter-configuration#sender') ?>
text('sender_name', 40); ?>
text_email('return_path', 40); ?> help('https://www.thenewsletterplugin.com/plugins/newsletter/newsletter-configuration#return-path') ?>
text_email('reply_to', 40); ?> help('https://www.thenewsletterplugin.com/plugins/newsletter/newsletter-configuration#reply-to') ?>
page('page', __('Unstyled page', 'newsletter'), '', true); ?> data['page'])) { $controls->button('create', __('Create the page', 'newsletter')); } ?> help('https://www.thenewsletterplugin.com/documentation/newsletter-configuration#dedicated-page') ?>
text('contract_key', 40); ?>

your account page', 'newsletter'), "https://www.thenewsletterplugin.com/account") ?>

panel_help('https://www.thenewsletterplugin.com/plugins/newsletter/newsletter-delivery-engine') ?>

text('scheduler_max', 5); ?> help('https://www.thenewsletterplugin.com/plugins/newsletter/newsletter-delivery-engine') ?>

panel_help('https://www.thenewsletterplugin.com/plugins/newsletter/newsletter-configuration#advanced') ?>

yesno('css_disabled'); ?>

Warning: Newsletter styles and custom styles are disable by your theme or a plugin.

textarea('css'); ?>
$wp_role) { if ($key == 'administrator') continue; if ($key == 'subscriber') continue; $roles[$key] = $wp_role['name']; } $controls->checkboxes('roles', $roles); ?>
log_level('log_level'); ?>
select('ip', array(''=>__('Store', 'newsletter'), 'anonymize'=> __('Anonymize', 'newsletter'), 'skip'=>__('Do not store', 'newsletter'))); ?>
yesno('track'); ?>

It can be changed on each newsletter.

yesno('debug', 40); ?>
select('content_transfer_encoding', array('' => 'Default', '8bit' => '8 bit', 'base64' => 'Base 64', 'binary' => 'Binary', 'quoted-printable' => 'Quoted printable', '7bit' => '7 bit')); ?> help('https://www.thenewsletterplugin.com/plugins/newsletter/newsletter-configuration#encoding') ?>
field_help("https://www.thenewsletterplugin.com/documentation/newsletter-configuration#shortcodes")?> yesno('do_shortcodes', 40); ?> field_help("https://www.thenewsletterplugin.com/documentation/newsletter-configuration#shortcodes")?>

button_save(); ?>