- Updates license check logic

- Updates subscriber limit check logic
- Updates unit tests
- Updates Menu's check for subscriber limit
This commit is contained in:
Vlad
2016-10-27 12:35:57 -04:00
parent a4395f2350
commit 7d2e13b9a3
6 changed files with 38 additions and 69 deletions

View File

@@ -14,7 +14,7 @@ use MailPoet\Settings\Hosts;
use MailPoet\Settings\Pages;
use MailPoet\Subscribers\ImportExport\ImportExportFactory;
use MailPoet\Listing;
use MailPoet\Util\License\License as License;
use MailPoet\Util\License\Features\Subscribers as SubscribersFeature;
use MailPoet\WP\DateTime;
if(!defined('ABSPATH')) exit;
@@ -23,6 +23,8 @@ class Menu {
function __construct($renderer, $assets_url) {
$this->renderer = $renderer;
$this->assets_url = $assets_url;
$subscribers_feature = new SubscribersFeature();
$this->subscribers_over_limit = $subscribers_feature->check();
}
function init() {
@@ -243,7 +245,7 @@ class Menu {
}
function settings() {
do_action(License::CHECK_PERMISSION, 'Subscribers');
if ($this->subscribers_over_limit) return $this->displaySubscriberLimitExceededTemplate();
$settings = Setting::getAll();
$flags = $this->_getFlags();
@@ -317,7 +319,7 @@ class Menu {
}
function segments() {
do_action(License::CHECK_PERMISSION, 'Subscribers');
if ($this->subscribers_over_limit) return $this->displaySubscriberLimitExceededTemplate();
$data = array();
$data['items_per_page'] = $this->getLimitPerPage('segments');
@@ -325,7 +327,7 @@ class Menu {
}
function forms() {
do_action(License::CHECK_PERMISSION, 'Subscribers');
if ($this->subscribers_over_limit) return $this->displaySubscriberLimitExceededTemplate();
$data = array();
@@ -336,7 +338,7 @@ class Menu {
}
function newsletters() {
do_action(License::CHECK_PERMISSION, 'Subscribers');
if ($this->subscribers_over_limit) return $this->displaySubscriberLimitExceededTemplate();
global $wp_roles;
@@ -438,4 +440,11 @@ class Menu {
? (int)$listing_per_page
: Listing\Handler::DEFAULT_LIMIT_PER_PAGE;
}
}
function displaySubscriberLimitExceededTemplate() {
echo $this->renderer->render('limit.html', array(
'limit' => SubscribersFeature::SUBSCRIBERS_LIMIT
));
exit;
}
}