public static function render($xml, array $params = array()) { if (!isset(static::$renderer)) { static::$renderer = static::getRenderer(); } if (!empty($params)) { static::$renderer->setParameters($params); } if (isset(static::$beforeRender)) { $xml = \call_user_func(static::$beforeRender, $xml); } $output = static::$renderer->render($xml); if (isset(static::$afterRender)) { $output = \call_user_func(static::$afterRender, $output); } return $output; }
public static function renderMulti(array $arr, array $params = array()) { if (!isset(static::$renderer)) { static::$renderer = static::getRenderer(); } if ($params) { static::$renderer->setParameters($params); } if (isset(static::$beforeRender)) { foreach ($arr as &$xml) { $xml = \call_user_func(static::$beforeRender, $xml); } unset($xml); } $arr = static::$renderer->renderMulti($arr); if (isset(static::$afterRender)) { foreach ($arr as &$output) { $output = \call_user_func(static::$afterRender, $output); } unset($output); } return $arr; }
public static function setRenderer(RendererInterface $renderer) { static::$renderer = $renderer; static::fireStatic('form.renderer-changed', $renderer); }
/** * Reset the cached parser and renderer * * @return void */ public static function reset() { static::$parser = null; static::$renderer = null; }
public static function _reset(Test $test) { self::$calls = ['getParser' => 0, 'getRenderer' => 0]; $mock = $test->getMock('stdClass', ['parse', 'render', 'setParameters']); $mock->expects($test->never())->method('parse'); $mock->expects($test->never())->method('render'); $mock->expects($test->never())->method('setParameters'); static::$parser = null; static::$_parser = $mock; static::$renderer = null; static::$_renderer = $mock; static::$beforeParse = null; static::$afterParse = null; static::$beforeRender = null; static::$afterRender = null; static::$beforeUnparse = null; static::$afterUnparse = null; }
/** * Get renderer, load Raw as default renderer if no one is set * * @return AbstractRenderer */ public static function getRenderer() { if (!static::$renderer) { static::$renderer = static::loadRenderer('text'); } return static::$renderer; }