Refactor getBlocks and getBlock methods from static to instance methods
[MAILPOET-2665]
This commit is contained in:
committed by
Jack Kitterhing
parent
37423908d7
commit
5193d4641c
@@ -20,7 +20,7 @@ class Renderer {
|
||||
|
||||
public function renderHTML($form = []) {
|
||||
if (isset($form['body']) && !empty($form['body'])) {
|
||||
return static::renderBlocks($form['body']);
|
||||
return $this->renderBlocks($form['body']);
|
||||
}
|
||||
return '';
|
||||
}
|
||||
@@ -35,7 +35,7 @@ class Renderer {
|
||||
}
|
||||
}
|
||||
|
||||
public static function renderBlocks($blocks = [], $honeypotEnabled = true) {
|
||||
public function renderBlocks($blocks = [], $honeypotEnabled = true) {
|
||||
$settings = SettingsController::getInstance();
|
||||
// add honeypot for spambots
|
||||
$html = ($honeypotEnabled) ?
|
||||
@@ -63,13 +63,13 @@ class Renderer {
|
||||
<input class="mailpoet_recaptcha_field" type="hidden" name="recaptcha">
|
||||
</div>';
|
||||
}
|
||||
$html .= static::renderBlock($block) . PHP_EOL;
|
||||
$html .= $this->renderBlock($block) . PHP_EOL;
|
||||
}
|
||||
|
||||
return $html;
|
||||
}
|
||||
|
||||
private static function renderBlock($block = []) {
|
||||
private function renderBlock($block = []) {
|
||||
$html = '';
|
||||
switch ($block['type']) {
|
||||
case 'html':
|
||||
|
@@ -20,11 +20,21 @@ class CaptchaRenderer {
|
||||
/** @var SubscriptionUrlFactory */
|
||||
private $subscriptionUrlFactory;
|
||||
|
||||
public function __construct(UrlHelper $urlHelper, WPFunctions $wp, CaptchaSession $captchaSession, SubscriptionUrlFactory $subscriptionUrlFactory) {
|
||||
/** @var FormRenderer */
|
||||
private $formRenderer;
|
||||
|
||||
public function __construct(
|
||||
UrlHelper $urlHelper,
|
||||
WPFunctions $wp,
|
||||
CaptchaSession $captchaSession,
|
||||
SubscriptionUrlFactory $subscriptionUrlFactory,
|
||||
FormRenderer $formRenderer
|
||||
) {
|
||||
$this->urlHelper = $urlHelper;
|
||||
$this->wp = $wp;
|
||||
$this->captchaSession = $captchaSession;
|
||||
$this->subscriptionUrlFactory = $subscriptionUrlFactory;
|
||||
$this->formRenderer = $formRenderer;
|
||||
}
|
||||
|
||||
public function getCaptchaPageTitle() {
|
||||
@@ -105,7 +115,7 @@ class CaptchaRenderer {
|
||||
$formHtml .= '</p>';
|
||||
|
||||
// subscription form
|
||||
$formHtml .= FormRenderer::renderBlocks($form, $honeypot = false);
|
||||
$formHtml .= $this->formRenderer->renderBlocks($form, $honeypot = false);
|
||||
$formHtml .= '</div>';
|
||||
$formHtml .= $this->renderFormMessages($formModel, $showSuccessMessage, $showErrorMessage);
|
||||
$formHtml .= '</form>';
|
||||
|
@@ -55,6 +55,9 @@ class Pages {
|
||||
/** @var AssetsController */
|
||||
private $assetsController;
|
||||
|
||||
/** @var FormRenderer */
|
||||
private $formRenderer;
|
||||
|
||||
public function __construct(
|
||||
NewSubscriberNotificationMailer $newSubscriberNotificationSender,
|
||||
WPFunctions $wp,
|
||||
@@ -64,7 +67,8 @@ class Pages {
|
||||
WelcomeScheduler $welcomeScheduler,
|
||||
LinkTokens $linkTokens,
|
||||
SubscriptionUrlFactory $subscriptionUrlFactory,
|
||||
AssetsController $assetsController
|
||||
AssetsController $assetsController,
|
||||
FormRenderer $formRenderer
|
||||
) {
|
||||
$this->wp = $wp;
|
||||
$this->newSubscriberNotificationSender = $newSubscriberNotificationSender;
|
||||
@@ -75,6 +79,7 @@ class Pages {
|
||||
$this->linkTokens = $linkTokens;
|
||||
$this->subscriptionUrlFactory = $subscriptionUrlFactory;
|
||||
$this->assetsController = $assetsController;
|
||||
$this->formRenderer = $formRenderer;
|
||||
}
|
||||
|
||||
public function init($action = false, $data = [], $initShortcodes = false, $initPageFilters = false) {
|
||||
@@ -487,7 +492,7 @@ class Pages {
|
||||
$formHtml .= '</p>';
|
||||
|
||||
// subscription form
|
||||
$formHtml .= FormRenderer::renderBlocks($form, $honeypot = false);
|
||||
$formHtml .= $this->formRenderer->renderBlocks($form, $honeypot = false);
|
||||
$formHtml .= '</form>';
|
||||
return $formHtml;
|
||||
}
|
||||
|
Reference in New Issue
Block a user