Use AssetsLoader for enqueue css in formEditor
[MAILPOET-3556]
This commit is contained in:
33
lib/Config/AssetsLoader.php
Normal file
33
lib/Config/AssetsLoader.php
Normal file
@ -0,0 +1,33 @@
|
||||
<?php
|
||||
|
||||
namespace MailPoet\Config;
|
||||
|
||||
use MailPoet\WP\Functions as WPFunctions;
|
||||
|
||||
class AssetsLoader {
|
||||
|
||||
/** @var Renderer */
|
||||
private $renderer;
|
||||
|
||||
/** @var WPFunctions */
|
||||
private $wp;
|
||||
|
||||
public function __construct(RendererFactory $rendererFactory, WPFunctions $wp) {
|
||||
$this->renderer = $rendererFactory->getRenderer();
|
||||
$this->wp = $wp;
|
||||
}
|
||||
|
||||
public function loadStyles(): void {
|
||||
if (isset($_GET['page']) && $_GET['page'] === 'mailpoet-form-editor') {
|
||||
$this->enqueueStyle('mailpoet-form-editor');
|
||||
$this->enqueueStyle('mailpoet-public');
|
||||
}
|
||||
}
|
||||
|
||||
private function enqueueStyle(string $name): void {
|
||||
$this->wp->wpEnqueueStyle(
|
||||
$name,
|
||||
Env::$assetsUrl . '/dist/css/' . $this->renderer->getCssAsset("{$name}.css")
|
||||
);
|
||||
}
|
||||
}
|
@ -73,6 +73,9 @@ class Initializer {
|
||||
/** @var Localizer */
|
||||
private $localizer;
|
||||
|
||||
/** @var AssetsLoader */
|
||||
private $assetsLoader;
|
||||
|
||||
const INITIALIZED = 'MAILPOET_INITIALIZED';
|
||||
|
||||
public function __construct(
|
||||
@ -92,25 +95,27 @@ class Initializer {
|
||||
WCTransactionalEmails $wcTransactionalEmails,
|
||||
PostEditorBlock $postEditorBlock,
|
||||
WooCommerceHelper $wcHelper,
|
||||
Localizer $localizer
|
||||
Localizer $localizer,
|
||||
AssetsLoader $assetsLoader
|
||||
) {
|
||||
$this->rendererFactory = $rendererFactory;
|
||||
$this->accessControl = $accessControl;
|
||||
$this->api = $api;
|
||||
$this->activator = $activator;
|
||||
$this->settings = $settings;
|
||||
$this->router = $router;
|
||||
$this->hooks = $hooks;
|
||||
$this->changelog = $changelog;
|
||||
$this->menu = $menu;
|
||||
$this->cronTrigger = $cronTrigger;
|
||||
$this->permanentNotices = $permanentNotices;
|
||||
$this->shortcodes = $shortcodes;
|
||||
$this->databaseInitializer = $databaseInitializer;
|
||||
$this->wcTransactionalEmails = $wcTransactionalEmails;
|
||||
$this->wcHelper = $wcHelper;
|
||||
$this->postEditorBlock = $postEditorBlock;
|
||||
$this->localizer = $localizer;
|
||||
$this->rendererFactory = $rendererFactory;
|
||||
$this->accessControl = $accessControl;
|
||||
$this->api = $api;
|
||||
$this->activator = $activator;
|
||||
$this->settings = $settings;
|
||||
$this->router = $router;
|
||||
$this->hooks = $hooks;
|
||||
$this->changelog = $changelog;
|
||||
$this->menu = $menu;
|
||||
$this->cronTrigger = $cronTrigger;
|
||||
$this->permanentNotices = $permanentNotices;
|
||||
$this->shortcodes = $shortcodes;
|
||||
$this->databaseInitializer = $databaseInitializer;
|
||||
$this->wcTransactionalEmails = $wcTransactionalEmails;
|
||||
$this->wcHelper = $wcHelper;
|
||||
$this->postEditorBlock = $postEditorBlock;
|
||||
$this->localizer = $localizer;
|
||||
$this->assetsLoader = $assetsLoader;
|
||||
}
|
||||
|
||||
public function init() {
|
||||
@ -187,6 +192,7 @@ class Initializer {
|
||||
$this->setupWidget();
|
||||
$this->hooks->init();
|
||||
$this->setupWoocommerceTransactionalEmails();
|
||||
$this->assetsLoader->loadStyles();
|
||||
} catch (\Exception $e) {
|
||||
$this->handleFailedInitialization($e);
|
||||
}
|
||||
|
@ -93,6 +93,7 @@ class ContainerConfigurator implements IContainerConfigurator {
|
||||
// Config
|
||||
$container->autowire(\MailPoet\Config\AccessControl::class)->setPublic(true);
|
||||
$container->autowire(\MailPoet\Config\Activator::class)->setPublic(true);
|
||||
$container->autowire(\MailPoet\Config\AssetsLoader::class)->setPublic(true);
|
||||
$container->autowire(\MailPoet\Config\Populator::class)->setPublic(true);
|
||||
$container->autowire(\MailPoet\Config\Changelog::class)->setPublic(true);
|
||||
$container->autowire(\MailPoet\Config\DatabaseInitializer::class);
|
||||
|
@ -1,10 +1,5 @@
|
||||
<% extends 'layout.html' %>
|
||||
|
||||
<% block after_css %>
|
||||
<%= stylesheet('mailpoet-form-editor.css') %>
|
||||
<%= stylesheet('mailpoet-public.css') %>
|
||||
<% endblock %>
|
||||
|
||||
<% block container %>
|
||||
|
||||
<script type="text/javascript">
|
||||
|
Reference in New Issue
Block a user