From 0cf89eb28c5a65f858a38eb1b49398477148a680 Mon Sep 17 00:00:00 2001 From: Rostislav Wolny Date: Mon, 15 Jul 2019 16:50:01 +0200 Subject: [PATCH] Add Segments page class [MAILPOET-2200] --- lib/AdminPages/Pages/Premium.php | 28 ++++++++++++++++++++++++++++ lib/AdminPages/Pages/Segments.php | 27 +++++++++++++++++++++++++++ lib/Config/Menu.php | 14 ++++---------- lib/DI/ContainerConfigurator.php | 2 ++ 4 files changed, 61 insertions(+), 10 deletions(-) create mode 100644 lib/AdminPages/Pages/Premium.php create mode 100644 lib/AdminPages/Pages/Segments.php diff --git a/lib/AdminPages/Pages/Premium.php b/lib/AdminPages/Pages/Premium.php new file mode 100644 index 0000000000..d9118bb6d1 --- /dev/null +++ b/lib/AdminPages/Pages/Premium.php @@ -0,0 +1,28 @@ +page_renderer = $page_renderer; + } + + function render() { + $data = [ + 'subscriber_count' => Subscriber::getTotalSubscribers(), + 'sub_menu' => Menu::MAIN_PAGE_SLUG, + 'display_discount' => time() <= strtotime('2018-11-30 23:59:59'), + ]; + + $this->page_renderer->displayPage('premium.html', $data); + } +} diff --git a/lib/AdminPages/Pages/Segments.php b/lib/AdminPages/Pages/Segments.php new file mode 100644 index 0000000000..51cabfb6bc --- /dev/null +++ b/lib/AdminPages/Pages/Segments.php @@ -0,0 +1,27 @@ +page_renderer = $page_renderer; + $this->listing_page_limit = $listing_page_limit; + } + + function render() { + $data = []; + $data['items_per_page'] = $this->listing_page_limit->getLimitPerPage('segments'); + $this->page_renderer->displayPage('segments.html', $data); + } +} diff --git a/lib/Config/Menu.php b/lib/Config/Menu.php index 8d64ef5fa1..b10bfee902 100644 --- a/lib/Config/Menu.php +++ b/lib/Config/Menu.php @@ -7,7 +7,9 @@ use MailPoet\AdminPages\Pages\Help; use MailPoet\AdminPages\Pages\MP2Migration; use MailPoet\AdminPages\Pages\NewsletterEditor; use MailPoet\AdminPages\Pages\Newsletters; +use MailPoet\AdminPages\Pages\Premium; use MailPoet\AdminPages\Pages\RevenueTrackingPermission; +use MailPoet\AdminPages\Pages\Segments; use MailPoet\AdminPages\Pages\Settings; use MailPoet\AdminPages\Pages\Subscribers; use MailPoet\AdminPages\Pages\Update; @@ -427,13 +429,7 @@ class Menu { } function premium() { - $data = [ - 'subscriber_count' => Subscriber::getTotalSubscribers(), - 'sub_menu' => self::MAIN_PAGE_SLUG, - 'display_discount' => time() <= strtotime('2018-11-30 23:59:59'), - ]; - - $this->page_renderer->displayPage('premium.html', $data); + $this->container->get(Premium::class)->render(); } function settings() { @@ -453,9 +449,7 @@ class Menu { } function segments() { - $data = []; - $data['items_per_page'] = $this->listing_page_limit->getLimitPerPage('segments'); - $this->page_renderer->displayPage('segments.html', $data); + $this->container->get(Segments::class)->render(); } function forms() { diff --git a/lib/DI/ContainerConfigurator.php b/lib/DI/ContainerConfigurator.php index 49398a47aa..e473d8e3f6 100644 --- a/lib/DI/ContainerConfigurator.php +++ b/lib/DI/ContainerConfigurator.php @@ -34,7 +34,9 @@ class ContainerConfigurator implements IContainerConfigurator { $container->autowire(\MailPoet\AdminPages\Pages\NewsletterEditor::class); $container->autowire(\MailPoet\AdminPages\Pages\Newsletters::class); $container->autowire(\MailPoet\AdminPages\Pages\MP2Migration::class); + $container->autowire(\MailPoet\AdminPages\Pages\Premium::class); $container->autowire(\MailPoet\AdminPages\Pages\RevenueTrackingPermission::class); + $container->autowire(\MailPoet\AdminPages\Pages\Segments::class); $container->autowire(\MailPoet\AdminPages\Pages\Settings::class); $container->autowire(\MailPoet\AdminPages\Pages\Subscribers::class); $container->autowire(\MailPoet\AdminPages\Pages\Update::class);