Refactor Twig related classes to use modernized twig namespace

[MAILPOET-1929]
This commit is contained in:
Rostislav Wolny
2019-03-28 16:45:00 +01:00
committed by M. Shull
parent 59a8857a44
commit a0fcea56d2
9 changed files with 65 additions and 46 deletions

View File

@ -3,9 +3,10 @@
namespace MailPoet\Config;
use MailPoet\Twig;
use MailPoetVendor\Twig_Environment as TwigEnv;
use MailPoetVendor\Twig_Lexer as TwigLexer;
use MailPoetVendor\Twig_Loader_Filesystem as TwigFileSystem;
use MailPoetVendor\Twig\Environment as TwigEnv;
use MailPoetVendor\Twig\Extension\DebugExtension;
use MailPoetVendor\Twig\Lexer as TwigLexer;
use MailPoetVendor\Twig\Loader\FilesystemLoader as TwigFileSystem;
use MailPoet\WP\Functions as WPFunctions;
@ -102,7 +103,7 @@ class Renderer {
function setupDebug() {
if ($this->debugging_enabled) {
$this->renderer->addExtension(new \MailPoetVendor\Twig_Extension_Debug());
$this->renderer->addExtension(new DebugExtension());
}
}

View File

@ -6,30 +6,32 @@ use MailPoet\Analytics\Reporter;
use MailPoet\Analytics\Analytics as AnalyticsGenerator;
use MailPoet\Settings\SettingsController;
use MailPoet\WooCommerce\Helper as WooCommerceHelper;
use MailPoetVendor\Twig\Extension\AbstractExtension;
use MailPoetVendor\Twig\TwigFunction;
if (!defined('ABSPATH')) exit;
class Analytics extends \MailPoetVendor\Twig_Extension {
class Analytics extends AbstractExtension {
public function getFunctions() {
$settings = new SettingsController();
$analytics = new AnalyticsGenerator(new Reporter($settings, new WooCommerceHelper), $settings);
return array(
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'get_analytics_data',
array($analytics, 'generateAnalytics'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'is_analytics_enabled',
array($analytics, 'isEnabled'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'get_analytics_public_id',
array($analytics, 'getPublicId'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'is_analytics_public_id_new',
array($analytics, 'isPublicIdNew'),
array('is_safe' => array('all'))

View File

@ -2,10 +2,12 @@
namespace MailPoet\Twig;
use MailPoet\WP\Functions as WPFunctions;
use MailPoetVendor\Twig\Extension\AbstractExtension;
use MailPoetVendor\Twig\TwigFunction;
if (!defined('ABSPATH')) exit;
class Assets extends \MailPoetVendor\Twig_Extension {
class Assets extends AbstractExtension {
const CDN_URL = 'https://ps.w.org/mailpoet/';
private $_globals;
@ -15,22 +17,22 @@ class Assets extends \MailPoetVendor\Twig_Extension {
function getFunctions() {
return array(
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'stylesheet',
array($this, 'generateStylesheet'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'javascript',
array($this, 'generateJavascript'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'image_url',
array($this, 'generateImageUrl'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'cdn_url',
array($this, 'generateCdnUrl'),
array('is_safe' => array('all'))

View File

@ -2,9 +2,12 @@
namespace MailPoet\Twig;
use MailPoetVendor\Twig\Extension\AbstractExtension;
use MailPoetVendor\Twig\TwigFilter;
if (!defined('ABSPATH')) exit;
class Filters extends \MailPoetVendor\Twig_Extension {
class Filters extends AbstractExtension {
function getName() {
return 'filters';
@ -12,11 +15,11 @@ class Filters extends \MailPoetVendor\Twig_Extension {
function getFilters() {
return array(
new \MailPoetVendor\Twig_SimpleFilter(
new TwigFilter(
'intval',
'intval'
),
new \MailPoetVendor\Twig_SimpleFilter(
new TwigFilter(
'replaceLinkTags',
'MailPoet\Util\Helpers::replaceLinkTags'
)

View File

@ -7,10 +7,12 @@ use MailPoet\Config\ServicesChecker;
use MailPoet\Settings\SettingsController;
use MailPoet\Util\FreeDomains;
use MailPoet\WP\Functions as WPFunctions;
use MailPoetVendor\Twig\Extension\AbstractExtension;
use MailPoetVendor\Twig\TwigFunction;
if (!defined('ABSPATH')) exit;
class Functions extends \MailPoetVendor\Twig_Extension {
class Functions extends AbstractExtension {
/** @var SettingsController */
private $settings;
@ -21,97 +23,97 @@ class Functions extends \MailPoetVendor\Twig_Extension {
function getFunctions() {
return array(
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'json_encode',
'json_encode',
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'json_decode',
'json_decode',
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'wp_nonce_field',
'wp_nonce_field',
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'params',
array($this, 'params'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'admin_url',
'admin_url',
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'get_option',
'get_option',
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'get_option',
'get_option',
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'sending_frequency',
array($this, 'getSendingFrequency'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'wp_date_format',
array($this, 'getWPDateFormat'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'mailpoet_version',
array($this, 'getMailPoetVersion'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'mailpoet_premium_version',
array($this, 'getMailPoetPremiumVersion'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'mailpoet_has_valid_premium_key',
array($this, 'hasValidPremiumKey'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'wp_time_format',
array($this, 'getWPTimeFormat'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'wp_datetime_format',
array($this, 'getWPDateTimeFormat'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'do_action',
'do_action',
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'is_rtl',
array($this, 'isRtl'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'number_format_i18n',
'number_format_i18n',
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'mailpoet_locale',
array($this, 'getTwoLettersLocale'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'mailpoet_free_domains',
array($this, 'getFreeDomains'),
array('is_safe' => array('all'))

View File

@ -2,12 +2,15 @@
namespace MailPoet\Twig;
use MailPoetVendor\Twig\Extension\AbstractExtension;
use MailPoetVendor\Twig\TwigFunction;
if (!defined('ABSPATH')) exit;
class Handlebars extends \MailPoetVendor\Twig_Extension {
class Handlebars extends AbstractExtension {
public function getFunctions() {
return array(
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'partial',
array(
$this,

View File

@ -2,12 +2,14 @@
namespace MailPoet\Twig;
use MailPoetVendor\Twig\TwigFunction;
if (!defined('ABSPATH')) exit;
class Helpscout extends \MailPoetVendor\Twig_Extension {
class Helpscout extends \MailPoetVendor\Twig\Extension\AbstractExtension {
public function getFunctions() {
return array(
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'get_helpscout_data',
'\MailPoet\Helpscout\Beacon::getData',
array('is_safe' => array('all'))

View File

@ -4,10 +4,12 @@ namespace MailPoet\Twig;
use MailPoet\Config\Localizer;
use MailPoet\WP\Functions as WPFunctions;
use MailPoetVendor\Twig\Extension\AbstractExtension;
use MailPoetVendor\Twig\TwigFunction;
if (!defined('ABSPATH')) exit;
class I18n extends \MailPoetVendor\Twig_Extension {
class I18n extends AbstractExtension {
private $_text_domain;
@ -30,7 +32,7 @@ class I18n extends \MailPoetVendor\Twig_Extension {
);
foreach ($functions as $twig_function => $function) {
$twig_functions[] = new \MailPoetVendor\Twig_SimpleFunction(
$twig_functions[] = new TwigFunction(
$twig_function,
array($this, $function),
array('is_safe' => array('all'))

View File

@ -3,10 +3,12 @@
namespace MailPoet\Twig;
use MailPoet\Settings\SettingsController;
use MailPoetVendor\Twig\Extension\AbstractExtension;
use MailPoetVendor\Twig\TwigFunction;
if (!defined('ABSPATH')) exit;
class Polls extends \MailPoetVendor\Twig_Extension {
class Polls extends AbstractExtension {
/** @var SettingsController */
private $settings;
@ -17,12 +19,12 @@ class Polls extends \MailPoetVendor\Twig_Extension {
public function getFunctions() {
return array(
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'get_polls_data',
array($this, 'getPollsData'),
array('is_safe' => array('all'))
),
new \MailPoetVendor\Twig_SimpleFunction(
new TwigFunction(
'get_polls_visiblity',
array($this, 'getPollsVisibility'),
array('is_safe' => array('all'))