Add Forms page class

[MAILPOET-2200]
This commit is contained in:
Rostislav Wolny
2019-07-15 17:00:51 +02:00
committed by M. Shull
parent 0cf89eb28c
commit fa521e5cb7
4 changed files with 43 additions and 16 deletions

View File

@ -0,0 +1,40 @@
<?php
namespace MailPoet\AdminPages\Pages;
use MailPoet\AdminPages\PageRenderer;
use MailPoet\Listing\PageLimit;
use MailPoet\Models\Segment;
use MailPoet\Util\Installation;
if (!defined('ABSPATH')) exit;
class Forms {
/** @var PageRenderer */
private $page_renderer;
/** @var PageLimit */
private $listing_page_limit;
/** @var Installation */
private $installation;
function __construct(
PageRenderer $page_renderer,
PageLimit $listing_page_limit,
Installation $installation
) {
$this->page_renderer = $page_renderer;
$this->listing_page_limit = $listing_page_limit;
$this->installation = $installation;
}
function render() {
$data = [];
$data['items_per_page'] = $this->listing_page_limit->getLimitPerPage('forms');
$data['segments'] = Segment::findArray();
$data['is_new_user'] = $this->installation->isNewInstallation();
$this->page_renderer->displayPage('forms.html', $data);
}
}

View File

@ -3,6 +3,7 @@
namespace MailPoet\Config; namespace MailPoet\Config;
use MailPoet\AdminPages\PageRenderer; use MailPoet\AdminPages\PageRenderer;
use MailPoet\AdminPages\Pages\Forms;
use MailPoet\AdminPages\Pages\Help; use MailPoet\AdminPages\Pages\Help;
use MailPoet\AdminPages\Pages\MP2Migration; use MailPoet\AdminPages\Pages\MP2Migration;
use MailPoet\AdminPages\Pages\NewsletterEditor; use MailPoet\AdminPages\Pages\NewsletterEditor;
@ -49,9 +50,6 @@ class Menu {
/** @var PageRenderer */ /** @var PageRenderer */
private $page_renderer; private $page_renderer;
/** @var Listing\PageLimit */
private $listing_page_limit;
/** @var Installation */ /** @var Installation */
private $installation; private $installation;
@ -65,7 +63,6 @@ class Menu {
WPFunctions $wp, WPFunctions $wp,
ServicesChecker $servicesChecker, ServicesChecker $servicesChecker,
PageRenderer $page_renderer, PageRenderer $page_renderer,
Listing\PageLimit $listing_page_limit,
Installation $installation, Installation $installation,
ContainerWrapper $containerWrapper ContainerWrapper $containerWrapper
) { ) {
@ -73,7 +70,6 @@ class Menu {
$this->wp = $wp; $this->wp = $wp;
$this->servicesChecker = $servicesChecker; $this->servicesChecker = $servicesChecker;
$this->page_renderer = $page_renderer; $this->page_renderer = $page_renderer;
$this->listing_page_limit = $listing_page_limit;
$this->installation = $installation; $this->installation = $installation;
$this->container = $containerWrapper; $this->container = $containerWrapper;
} }
@ -454,15 +450,7 @@ class Menu {
function forms() { function forms() {
if ($this->subscribers_over_limit) return $this->displaySubscriberLimitExceededTemplate(); if ($this->subscribers_over_limit) return $this->displaySubscriberLimitExceededTemplate();
$this->container->get(Forms::class)->render();
$data = [];
$data['items_per_page'] = $this->listing_page_limit->getLimitPerPage('forms');
$data['segments'] = Segment::findArray();
$data['is_new_user'] = $this->installation->isNewInstallation();
$this->page_renderer->displayPage('forms.html', $data);
} }
function newsletters() { function newsletters() {

View File

@ -30,6 +30,7 @@ class ContainerConfigurator implements IContainerConfigurator {
]); ]);
// AdminPages // AdminPages
$container->autowire(\MailPoet\AdminPages\PageRenderer::class); $container->autowire(\MailPoet\AdminPages\PageRenderer::class);
$container->autowire(\MailPoet\AdminPages\Pages\Forms::class);
$container->autowire(\MailPoet\AdminPages\Pages\Help::class); $container->autowire(\MailPoet\AdminPages\Pages\Help::class);
$container->autowire(\MailPoet\AdminPages\Pages\NewsletterEditor::class); $container->autowire(\MailPoet\AdminPages\Pages\NewsletterEditor::class);
$container->autowire(\MailPoet\AdminPages\Pages\Newsletters::class); $container->autowire(\MailPoet\AdminPages\Pages\Newsletters::class);

View File

@ -8,7 +8,6 @@ use MailPoet\Config\AccessControl;
use MailPoet\Config\Menu; use MailPoet\Config\Menu;
use MailPoet\Config\ServicesChecker; use MailPoet\Config\ServicesChecker;
use MailPoet\DI\ContainerWrapper; use MailPoet\DI\ContainerWrapper;
use MailPoet\Listing\PageLimit;
use MailPoet\Settings\SettingsController; use MailPoet\Settings\SettingsController;
use MailPoet\Util\Installation; use MailPoet\Util\Installation;
use MailPoet\WP\Functions as WPFunctions; use MailPoet\WP\Functions as WPFunctions;
@ -95,7 +94,6 @@ class MenuTest extends \MailPoetTest {
$wp, $wp,
new ServicesChecker, new ServicesChecker,
$renderer, $renderer,
new PageLimit($wp),
new Installation($settings, $wp), new Installation($settings, $wp),
ContainerWrapper::getInstance() ContainerWrapper::getInstance()
); );