diff --git a/lib/Analytics/Reporter.php b/lib/Analytics/Reporter.php index 548c05c836..3428baf610 100644 --- a/lib/Analytics/Reporter.php +++ b/lib/Analytics/Reporter.php @@ -9,6 +9,7 @@ use MailPoet\Models\Segment; use MailPoet\Models\Setting; use MailPoet\Models\Subscriber; use MailPoet\Settings\Pages; +use MailPoet\Util\Helpers; class Reporter { @@ -52,7 +53,7 @@ class Reporter { 'Number of active welcome emails' => $newsletters['welcome_newsletters_count'], 'Number of segments' => isset($segments['dynamic']) ? (int)$segments['dynamic'] : 0, 'Number of lists' => isset($segments['default']) ? (int)$segments['default'] : 0, - 'Plugin > MailPoet Premium' => is_plugin_active('mailpoet-premium/mailpoet-premium.php'), + 'Plugin > MailPoet Premium' => Helpers::isPremiumActive(), 'Plugin > bounce add-on' => is_plugin_active('mailpoet-bounce-handler/mailpoet-bounce-handler.php'), 'Plugin > Bloom' => is_plugin_active('bloom-for-publishers/bloom.php'), 'Plugin > WP Holler' => is_plugin_active('holler-box/holler-box.php'), diff --git a/lib/Config/Menu.php b/lib/Config/Menu.php index 8df56f4e3c..49e806db8d 100644 --- a/lib/Config/Menu.php +++ b/lib/Config/Menu.php @@ -597,7 +597,7 @@ class Menu { } function import() { - $import = new ImportExportFactory('import'); + $import = new ImportExportFactory(ImportExportFactory::IMPORT_ACTION); $data = $import->bootstrap(); $data = array_merge($data, array( 'date_types' => Block\Date::getDateTypes(), @@ -609,7 +609,7 @@ class Menu { } function export() { - $export = new ImportExportFactory('export'); + $export = new ImportExportFactory(ImportExportFactory::EXPORT_ACTION); $data = $export->bootstrap(); $data['sub_menu'] = 'mailpoet-subscribers'; $this->displayPage('subscribers/importExport/export.html', $data); diff --git a/lib/Subscribers/ImportExport/ImportExportFactory.php b/lib/Subscribers/ImportExport/ImportExportFactory.php index c4920243d8..aa85034635 100644 --- a/lib/Subscribers/ImportExport/ImportExportFactory.php +++ b/lib/Subscribers/ImportExport/ImportExportFactory.php @@ -3,9 +3,13 @@ namespace MailPoet\Subscribers\ImportExport; use MailPoet\Models\CustomField; use MailPoet\Models\Segment; +use MailPoet\Premium\Models\DynamicSegment; use MailPoet\Util\Helpers; class ImportExportFactory { + const IMPORT_ACTION = 'import'; + const EXPORT_ACTION = 'export'; + public $action; function __construct($action = null) { @@ -13,9 +17,12 @@ class ImportExportFactory { } function getSegments($with_confirmed_subscribers = false) { - $segments = ($this->action === 'import') ? + $segments = ($this->action === self::IMPORT_ACTION) ? Segment::getSegmentsForImport() : Segment::getSegmentsForExport($with_confirmed_subscribers); + if(Helpers::isPremiumActive() && $this->action === self::EXPORT_ACTION) { + $segments = array_merge($segments, DynamicSegment::getSegmentsForExport()); + } return array_map(function($segment) { if(!$segment['name']) $segment['name'] = __('Not In List', 'mailpoet'); if(!$segment['id']) $segment['id'] = 0; diff --git a/lib/Util/Helpers.php b/lib/Util/Helpers.php index 48fea28da8..1350485bc7 100644 --- a/lib/Util/Helpers.php +++ b/lib/Util/Helpers.php @@ -159,4 +159,8 @@ class Helpers { ? $_SERVER['REMOTE_ADDR'] : null; } + + static function isPremiumActive() { + return is_plugin_active('mailpoet-premium/mailpoet-premium.php'); + } }