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;
use MailPoet\AdminPages\PageRenderer;
use MailPoet\AdminPages\Pages\Forms;
use MailPoet\AdminPages\Pages\Help;
use MailPoet\AdminPages\Pages\MP2Migration;
use MailPoet\AdminPages\Pages\NewsletterEditor;
@ -49,9 +50,6 @@ class Menu {
/** @var PageRenderer */
private $page_renderer;
/** @var Listing\PageLimit */
private $listing_page_limit;
/** @var Installation */
private $installation;
@ -65,7 +63,6 @@ class Menu {
WPFunctions $wp,
ServicesChecker $servicesChecker,
PageRenderer $page_renderer,
Listing\PageLimit $listing_page_limit,
Installation $installation,
ContainerWrapper $containerWrapper
) {
@ -73,7 +70,6 @@ class Menu {
$this->wp = $wp;
$this->servicesChecker = $servicesChecker;
$this->page_renderer = $page_renderer;
$this->listing_page_limit = $listing_page_limit;
$this->installation = $installation;
$this->container = $containerWrapper;
}
@ -454,15 +450,7 @@ class Menu {
function forms() {
if ($this->subscribers_over_limit) return $this->displaySubscriberLimitExceededTemplate();
$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);
$this->container->get(Forms::class)->render();
}
function newsletters() {

View File

@ -30,6 +30,7 @@ class ContainerConfigurator implements IContainerConfigurator {
]);
// AdminPages
$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\NewsletterEditor::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\ServicesChecker;
use MailPoet\DI\ContainerWrapper;
use MailPoet\Listing\PageLimit;
use MailPoet\Settings\SettingsController;
use MailPoet\Util\Installation;
use MailPoet\WP\Functions as WPFunctions;
@ -95,7 +94,6 @@ class MenuTest extends \MailPoetTest {
$wp,
new ServicesChecker,
$renderer,
new PageLimit($wp),
new Installation($settings, $wp),
ContainerWrapper::getInstance()
);