Add notice when premium features for key are available

[MAILPOET-5429]
This commit is contained in:
Jan Lysý
2023-07-18 13:47:16 +02:00
committed by Aschepikov
parent 1e33574c76
commit 7d6e69e639
2 changed files with 88 additions and 0 deletions

View File

@@ -3,6 +3,7 @@
namespace MailPoet\Util\Notices;
use MailPoet\Config\Menu;
use MailPoet\Config\ServicesChecker;
use MailPoet\Mailer\MailerFactory;
use MailPoet\Settings\SettingsController;
use MailPoet\Settings\TrackingConfig;
@@ -54,12 +55,16 @@ class PermanentNotices {
/** @var WooCommerceVersionWarning */
private $woocommerceVersionWarning;
/** @var PremiumFeaturesAvailableNotice */
private $premiumFeaturesAvailableNotice;
public function __construct(
WPFunctions $wp,
TrackingConfig $trackingConfig,
SubscribersRepository $subscribersRepository,
SettingsController $settings,
SubscribersFeature $subscribersFeature,
ServicesChecker $serviceChecker,
MailerFactory $mailerFactory
) {
$this->wp = $wp;
@@ -76,6 +81,7 @@ class PermanentNotices {
$this->disabledMailFunctionNotice = new DisabledMailFunctionNotice($wp, $settings, $subscribersFeature, $mailerFactory);
$this->pendingApprovalNotice = new PendingApprovalNotice($settings);
$this->woocommerceVersionWarning = new WooCommerceVersionWarning($wp);
$this->premiumFeaturesAvailableNotice = new PremiumFeaturesAvailableNotice($subscribersFeature, $serviceChecker, $wp);
}
public function init() {
@@ -129,6 +135,9 @@ class PermanentNotices {
$this->woocommerceVersionWarning->init(
Menu::isOnMailPoetAdminPage($excludeSetupWizard)
);
$this->premiumFeaturesAvailableNotice->init(
Menu::isOnMailPoetAdminPage($excludeSetupWizard)
);
}
public function ajaxDismissNoticeHandler() {
@@ -161,6 +170,9 @@ class PermanentNotices {
case (WooCommerceVersionWarning::OPTION_NAME):
$this->woocommerceVersionWarning->disable();
break;
case (PremiumFeaturesAvailableNotice::OPTION_NAME):
$this->premiumFeaturesAvailableNotice->disable();
break;
}
}
}