Move automatic email initialization from Premium plugin
[MAILPOET-2382]
This commit is contained in:
committed by
Jack Kitterhing
parent
d51ba11bf2
commit
c829be1a11
@ -3,6 +3,7 @@
|
|||||||
namespace MailPoet\Config;
|
namespace MailPoet\Config;
|
||||||
|
|
||||||
use MailPoet\API\JSON\API;
|
use MailPoet\API\JSON\API;
|
||||||
|
use MailPoet\AutomaticEmails\AutomaticEmails;
|
||||||
use MailPoet\Cron\CronTrigger;
|
use MailPoet\Cron\CronTrigger;
|
||||||
use MailPoet\Router;
|
use MailPoet\Router;
|
||||||
use MailPoet\Settings\SettingsController;
|
use MailPoet\Settings\SettingsController;
|
||||||
@ -15,6 +16,7 @@ use MailPoet\WP\Notice as WPNotice;
|
|||||||
require_once(ABSPATH . 'wp-admin/includes/plugin.php');
|
require_once(ABSPATH . 'wp-admin/includes/plugin.php');
|
||||||
|
|
||||||
class Initializer {
|
class Initializer {
|
||||||
|
public $automatic_emails;
|
||||||
|
|
||||||
/** @var AccessControl */
|
/** @var AccessControl */
|
||||||
private $access_control;
|
private $access_control;
|
||||||
@ -200,6 +202,7 @@ class Initializer {
|
|||||||
|
|
||||||
$this->setupPermanentNotices();
|
$this->setupPermanentNotices();
|
||||||
$this->setupDeactivationSurvey();
|
$this->setupDeactivationSurvey();
|
||||||
|
$this->setupAutomaticEmails();
|
||||||
|
|
||||||
WPFunctions::get()->doAction('mailpoet_initialized', MAILPOET_VERSION);
|
WPFunctions::get()->doAction('mailpoet_initialized', MAILPOET_VERSION);
|
||||||
} catch (\Exception $e) {
|
} catch (\Exception $e) {
|
||||||
@ -327,4 +330,29 @@ class Initializer {
|
|||||||
$survey = new DeactivationSurvey($this->renderer);
|
$survey = new DeactivationSurvey($this->renderer);
|
||||||
$survey->init();
|
$survey->init();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function setupAutomaticEmails() {
|
||||||
|
$automatic_emails = new AutomaticEmails();
|
||||||
|
$automatic_emails->init();
|
||||||
|
$this->automatic_emails = $automatic_emails->getAutomaticEmails();
|
||||||
|
|
||||||
|
WPFunctions::get()->addAction(
|
||||||
|
'mailpoet_newsletters_translations_after',
|
||||||
|
[$this, 'includeAutomaticEmailsData']
|
||||||
|
);
|
||||||
|
|
||||||
|
WPFunctions::get()->addAction(
|
||||||
|
'mailpoet_newsletter_editor_after_javascript',
|
||||||
|
[$this, 'includeAutomaticEmailsData']
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
function includeAutomaticEmailsData() {
|
||||||
|
$data = [
|
||||||
|
'automatic_emails' => $this->automatic_emails,
|
||||||
|
'woocommerce_optin_on_checkout' => $this->settings->get('woocommerce.optin_on_checkout.enabled', false),
|
||||||
|
];
|
||||||
|
|
||||||
|
echo $this->renderer->render('automatic_emails.html', $data);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
19
views/automatic_emails.html
Normal file
19
views/automatic_emails.html
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
<script type="text/javascript">
|
||||||
|
var mailpoet_premium_automatic_emails = <%= json_encode(automatic_emails) %>;
|
||||||
|
var mailpoet_woocommerce_optin_on_checkout = "<%= woocommerce_optin_on_checkout %>";
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<% block translations %>
|
||||||
|
<%= localize({
|
||||||
|
'automaticEmail': __('Automatic Email'),
|
||||||
|
'tip': __('Tip:'),
|
||||||
|
'selectAutomaticEmailsEventsConditionsHeading': __("Select %1s events conditions"),
|
||||||
|
'sendAutomaticEmailWhenHeading': __('Send this %1s Automatic Email when...'),
|
||||||
|
'automaticEmailActivated': __('Your %1s Automatic Email is now activated!'),
|
||||||
|
'automaticEmailActivationFailed': __('Your %1s Automatic Email could not be activated, please check the settings.'),
|
||||||
|
'automaticEmailEventOptionsNotConfigured': __('You need to configure email options before this email can be sent.'),
|
||||||
|
'sentToXCustomers': __('Sent to %$1d customers'),
|
||||||
|
'wooCommerceEmailsWarning': __('WooCommerce emails won’t be sent to new customers because the opt-in on checkout is disabled. Enable it so they can immediately get your emails after their first purchase.'),
|
||||||
|
'wooCommerceEmailsWarningLink': __('Edit WooCommerce settings'),
|
||||||
|
}) %>
|
||||||
|
<% endblock %>
|
Reference in New Issue
Block a user