Use TrackingConfig and new tracking settings property in PHP
[MAILPOET-3185]
This commit is contained in:
committed by
Veljko V
parent
fbe933eb12
commit
699266c920
@ -23,6 +23,7 @@ use MailPoet\Newsletter\Scheduler\PostNotificationScheduler;
|
||||
use MailPoet\Newsletter\Scheduler\Scheduler;
|
||||
use MailPoet\Newsletter\Url as NewsletterUrl;
|
||||
use MailPoet\Settings\SettingsController;
|
||||
use MailPoet\Settings\TrackingConfig;
|
||||
use MailPoet\UnexpectedValueException;
|
||||
use MailPoet\Util\License\Features\Subscribers as SubscribersFeature;
|
||||
use MailPoet\Util\Security;
|
||||
@ -75,6 +76,9 @@ class Newsletters extends APIEndpoint {
|
||||
/** @var NewsletterUrl */
|
||||
private $newsletterUrl;
|
||||
|
||||
/** @var TrackingConfig */
|
||||
private $trackingConfig;
|
||||
|
||||
public function __construct(
|
||||
Listing\Handler $listingHandler,
|
||||
WPFunctions $wp,
|
||||
@ -88,7 +92,8 @@ class Newsletters extends APIEndpoint {
|
||||
SubscribersFeature $subscribersFeature,
|
||||
SendPreviewController $sendPreviewController,
|
||||
NewsletterSaveController $newsletterSaveController,
|
||||
NewsletterUrl $newsletterUrl
|
||||
NewsletterUrl $newsletterUrl,
|
||||
TrackingConfig $trackingConfig
|
||||
) {
|
||||
$this->listingHandler = $listingHandler;
|
||||
$this->wp = $wp;
|
||||
@ -103,6 +108,7 @@ class Newsletters extends APIEndpoint {
|
||||
$this->sendPreviewController = $sendPreviewController;
|
||||
$this->newsletterSaveController = $newsletterSaveController;
|
||||
$this->newsletterUrl = $newsletterUrl;
|
||||
$this->trackingConfig = $trackingConfig;
|
||||
}
|
||||
|
||||
public function get($data = []) {
|
||||
@ -185,8 +191,7 @@ class Newsletters extends APIEndpoint {
|
||||
}
|
||||
}
|
||||
|
||||
$tracking = $this->settings->get('tracking');
|
||||
$tracking_enabled = !empty($tracking['enabled']) && $tracking['enabled'] === "1";
|
||||
$tracking_enabled = $this->trackingConfig->isEmailTrackingEnabled();
|
||||
if (!$tracking_enabled && $newsletter->getType() === NewsletterEntity::TYPE_RE_ENGAGEMENT && $status === NewsletterEntity::STATUS_ACTIVE) {
|
||||
return $this->errorResponse([
|
||||
APIError::FORBIDDEN => __(
|
||||
|
@ -19,6 +19,7 @@ use MailPoet\Segments\SegmentsRepository;
|
||||
use MailPoet\Services\AuthorizedEmailsController;
|
||||
use MailPoet\Services\Bridge;
|
||||
use MailPoet\Settings\SettingsController;
|
||||
use MailPoet\Settings\TrackingConfig;
|
||||
use MailPoet\Statistics\StatisticsOpensRepository;
|
||||
use MailPoet\Subscribers\SubscribersCountsController;
|
||||
use MailPoet\WooCommerce\TransactionalEmails;
|
||||
@ -70,6 +71,9 @@ class Settings extends APIEndpoint {
|
||||
/** @var NewslettersRepository */
|
||||
private $newsletterRepository;
|
||||
|
||||
/** @var TrackingConfig */
|
||||
private $trackingConfig;
|
||||
|
||||
public function __construct(
|
||||
SettingsController $settings,
|
||||
Bridge $bridge,
|
||||
@ -83,7 +87,8 @@ class Settings extends APIEndpoint {
|
||||
FormMessageController $messageController,
|
||||
ServicesChecker $servicesChecker,
|
||||
SegmentsRepository $segmentsRepository,
|
||||
SubscribersCountsController $subscribersCountsController
|
||||
SubscribersCountsController $subscribersCountsController,
|
||||
TrackingConfig $trackingConfig
|
||||
) {
|
||||
$this->settings = $settings;
|
||||
$this->bridge = $bridge;
|
||||
@ -98,6 +103,7 @@ class Settings extends APIEndpoint {
|
||||
$this->messageController = $messageController;
|
||||
$this->segmentsRepository = $segmentsRepository;
|
||||
$this->subscribersCountsController = $subscribersCountsController;
|
||||
$this->trackingConfig = $trackingConfig;
|
||||
}
|
||||
|
||||
public function get() {
|
||||
@ -287,7 +293,7 @@ class Settings extends APIEndpoint {
|
||||
* @throws \Exception
|
||||
*/
|
||||
public function updateReEngagementEmailStatus($newTracking): array {
|
||||
if (!empty($newTracking['enabled']) && $newTracking['enabled'] === "1" ) {
|
||||
if (!empty($newTracking['level']) && $this->trackingConfig->isEmailTrackingEnabled($newTracking['level'])) {
|
||||
return $this->reactivateReEngagementEmails();
|
||||
}
|
||||
try {
|
||||
|
Reference in New Issue
Block a user