Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace Typeflex;
- /**
- * This disgusting hack is caused by Liquid being overly strict with their render method signature.
- */
- if (PHP_MAJOR_VERSION >= 7) {
- set_error_handler(function ($errno, $errstr, $file) {
- return strpos($file, 'includes'.DIRECTORY_SEPARATOR.'classes'.DIRECTORY_SEPARATOR.'Liquid.php') !== false &&
- strpos($errstr, 'Declaration of') === 0;
- }, E_WARNING);
- }
- /**
- * Class that extends Liquid and sets up sensible defaults.
- */
- class Liquid extends \Liquid\Template
- {
- private function initialise() {
- \Liquid\Liquid::set('INCLUDE_SUFFIX', 'liquid');
- \Liquid\Liquid::set('INCLUDE_PREFIX', '');
- \Liquid\Liquid::set('INCLUDE_ALLOW_EXT', false);
- \Liquid\Liquid::set('ESCAPE_BY_DEFAULT', false);
- \Liquid\Liquid::set('PAGINATION_CONTEXT_KEY', 'pagination_page');
- $this->registerTag('include', '\Typeflex\Sieve\TagInclude');
- }
- public function __construct ($path = null) {
- $this->initialise();
- $this->registerFilter(new \Typeflex\HtmlFilter());
- $this->registerTag('form', 'LiquidTagForm');
- //$this->registerTag('form', new \Typeflex\CustomTags());
- $this->setCache(new \Liquid\Cache\Local());
- parent::__construct($path);
- }
- public function render(Sieve\Container $assigns, $filters = null, array $registers = array())
- {
- $assigns = (array)$assigns;
- return parent::render($assigns, $filters, $registers);
- }
- }
- class LiquidTagForm extends \Liquid\Tag\AbstractBlock
- {
- public function render($context) {
- echo $context;
- exit;
- $str = '<form action="./" method="post"></form>';
- return $str;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement