Allow MSS Pitch to be displayed on congratulate

[MAILPOET-2142]
This commit is contained in:
Pavel Dohnal
2019-09-17 09:57:41 +02:00
committed by Jack Kitterhing
parent dd88891532
commit 744a6edc49
4 changed files with 38 additions and 9 deletions

View File

@@ -18,7 +18,7 @@ function renderHeader(newsletter) {
return MailPoet.I18n.t('congratulationsSendSuccessHeader');
}
function Success(props) {
function MSSUserSuccess(props) {
const showSuccessDeliveryPoll = (
props.newsletter.type === 'standard'
&& props.newsletter.status !== 'scheduled'
@@ -46,6 +46,38 @@ function Success(props) {
);
}
MSSUserSuccess.propTypes = {
successClicked: PropTypes.func.isRequired,
illustrationImageUrl: PropTypes.string.isRequired,
newsletter: PropTypes.shape({
status: PropTypes.string.isRequired,
type: PropTypes.string.isRequired,
}).isRequired,
};
function PitchMss() {
return (
<div>
DISPLAY MSS PITCH HERE
</div>
);
}
function Success(props) {
if (!window.has_premium_key) {
return (
<PitchMss />
);
}
return (
<MSSUserSuccess
successClicked={props.successClicked}
illustrationImageUrl={props.illustrationImageUrl}
newsletter={props.newsletter}
/>
);
}
Success.propTypes = {
successClicked: PropTypes.func.isRequired,
illustrationImageUrl: PropTypes.string.isRequired,

View File

@@ -72,6 +72,7 @@ class Newsletters {
$data['segments'] = $segments;
$data['settings'] = $this->settings->getAll();
$data['mss_active'] = Bridge::isMPSendingServiceEnabled();
$data['has_premium_key'] = Bridge::isMSSKeySpecified();
$data['current_wp_user'] = $this->wp->wpGetCurrentUser()->to_array();
$data['current_wp_user_firstname'] = $this->wp->wpGetCurrentUser()->user_firstname;
$data['site_url'] = $this->wp->siteUrl();

View File

@@ -5,8 +5,8 @@ namespace MailPoet\AdminPages\Pages;
use MailPoet\AdminPages\PageRenderer;
use MailPoet\Config\Menu;
use MailPoet\Config\MP2Migrator;
use MailPoet\Config\ServicesChecker;
use MailPoet\Models\Subscriber;
use MailPoet\Services\Bridge;
use MailPoet\Settings\SettingsController;
use MailPoet\WooCommerce\Helper as WooCommerceHelper;
use MailPoet\WP\Functions as WPFunctions;
@@ -24,21 +24,16 @@ class WelcomeWizard {
/** @var WPFunctions */
private $wp;
/** @var ServicesChecker */
private $services_checker;
function __construct(
PageRenderer $page_renderer,
SettingsController $settings,
WooCommerceHelper $woocommerce_helper,
WPFunctions $wp,
ServicesChecker $services_checker
WPFunctions $wp
) {
$this->page_renderer = $page_renderer;
$this->settings = $settings;
$this->woocommerce_helper = $woocommerce_helper;
$this->wp = $wp;
$this->services_checker = $services_checker;
}
function render() {
@@ -50,7 +45,7 @@ class WelcomeWizard {
'sender' => $this->settings->get('sender'),
'admin_email' => $this->wp->getOption('admin_email'),
'subscribers_count' => Subscriber::count(),
'has_premium_key' => $this->services_checker->isPremiumKeyValid(),
'has_premium_key' => Bridge::isMSSKeySpecified(),
];
$this->page_renderer->displayPage('welcome_wizard.html', $data);
}

View File

@@ -24,6 +24,7 @@
var mailpoet_date_storage_format = "Y-m-d";
var mailpoet_tracking_enabled = <%= json_encode(tracking_enabled) %>;
var mailpoet_premium_active = <%= json_encode(premium_plugin_active) %>;
var has_premium_key = <%= json_encode(has_premium_key) %>;
var mailpoet_woocommerce_active = <%= json_encode(is_woocommerce_active) %>;
var mailpoet_automatic_emails = <%= json_encode(automatic_emails) %>;
var mailpoet_feature_announcement_has_news = <%= json_encode(feature_announcement_has_news) %>;