Files
piratepoet/lib/AdminPages/Pages/WelcomeWizard.php
2021-01-11 14:55:44 +01:00

66 lines
2.1 KiB
PHP

<?php
namespace MailPoet\AdminPages\Pages;
use MailPoet\AdminPages\PageRenderer;
use MailPoet\Config\Menu;
use MailPoet\Config\MP2Migrator;
use MailPoet\Features\FeaturesController;
use MailPoet\Services\Bridge;
use MailPoet\Settings\SettingsController;
use MailPoet\Util\License\Features\Subscribers as SubscribersFeature;
use MailPoet\WooCommerce\Helper as WooCommerceHelper;
use MailPoet\WP\Functions as WPFunctions;
class WelcomeWizard {
/** @var PageRenderer */
private $pageRenderer;
/** @var SettingsController */
private $settings;
/** @var WooCommerceHelper */
private $woocommerceHelper;
/** @var WPFunctions */
private $wp;
/** @var FeaturesController */
private $featuresController;
/** @var SubscribersFeature */
private $subscribersFeature;
public function __construct(
PageRenderer $pageRenderer,
SettingsController $settings,
WooCommerceHelper $woocommerceHelper,
WPFunctions $wp,
FeaturesController $featuresController,
SubscribersFeature $subscribersFeature
) {
$this->pageRenderer = $pageRenderer;
$this->settings = $settings;
$this->woocommerceHelper = $woocommerceHelper;
$this->wp = $wp;
$this->featuresController = $featuresController;
$this->subscribersFeature = $subscribersFeature;
}
public function render() {
if ((bool)(defined('DOING_AJAX') && DOING_AJAX)) return;
$data = [
'is_mp2_migration_complete' => (bool)$this->settings->get(MP2Migrator::MIGRATION_COMPLETE_SETTING_KEY),
'is_woocommerce_active' => $this->woocommerceHelper->isWooCommerceActive(),
'finish_wizard_url' => $this->wp->adminUrl('admin.php?page=' . Menu::MAIN_PAGE_SLUG),
'sender' => $this->settings->get('sender'),
'admin_email' => $this->wp->getOption('admin_email'),
'current_wp_user' => $this->wp->wpGetCurrentUser()->to_array(),
'subscriber_count' => $this->subscribersFeature->getSubscribersCount(),
'has_mss_key_specified' => Bridge::isMSSKeySpecified(),
];
$data['mailpoet_feature_flags'] = $this->featuresController->getAllFlags();
$this->pageRenderer->displayPage('welcome_wizard.html', $data);
}
}