Phalcon\Mvc\View\Engine\Twig::registryFunctions PHP Method

registryFunctions() protected method

Registers common function in Twig
protected registryFunctions ( Phalcon\Mvc\ViewInterface $view, Phalcon\DiInterface $di, array $userFunctions = [] )
$view Phalcon\Mvc\ViewInterface
$di Phalcon\DiInterface
$userFunctions array
    protected function registryFunctions($view, DiInterface $di, $userFunctions = [])
    {
        $options = ['is_safe' => ['html']];
        $functions = [new \Twig_SimpleFunction('content', function () use($view) {
            return $view->getContent();
        }, $options), new \Twig_SimpleFunction('partial', function ($partialPath) use($view) {
            return $view->partial($partialPath);
        }, $options), new \Twig_SimpleFunction('linkTo', function ($parameters, $text = null) {
            return \Phalcon\Tag::linkTo($parameters, $text);
        }, $options), new \Twig_SimpleFunction('textField', function ($parameters) {
            return \Phalcon\Tag::textField($parameters);
        }, $options), new \Twig_SimpleFunction('passwordField', function ($parameters) {
            return \Phalcon\Tag::passwordField($parameters);
        }, $options), new \Twig_SimpleFunction('hiddenField', function ($parameters) {
            return \Phalcon\Tag::hiddenField($parameters);
        }, $options), new \Twig_SimpleFunction('fileField', function ($parameters) {
            return \Phalcon\Tag::fileField($parameters);
        }, $options), new \Twig_SimpleFunction('checkField', function ($parameters) {
            return \Phalcon\Tag::checkField($parameters);
        }, $options), new \Twig_SimpleFunction('radioField', function ($parameters) {
            return \Phalcon\Tag::radioField($parameters);
        }, $options), new \Twig_SimpleFunction('submitButton', function ($parameters) {
            return \Phalcon\Tag::submitButton($parameters);
        }, $options), new \Twig_SimpleFunction('selectStatic', function ($parameters, $data = []) {
            return \Phalcon\Tag::selectStatic($parameters, $data);
        }, $options), new \Twig_SimpleFunction('select', function ($parameters, $data = []) {
            return \Phalcon\Tag::select($parameters, $data);
        }, $options), new \Twig_SimpleFunction('textArea', function ($parameters) {
            return \Phalcon\Tag::textArea($parameters);
        }, $options), new \Twig_SimpleFunction('form', function ($parameters = []) {
            return \Phalcon\Tag::form($parameters);
        }, $options), new \Twig_SimpleFunction('endForm', function () {
            return \Phalcon\Tag::endForm();
        }, $options), new \Twig_SimpleFunction('getTitle', function () {
            return \Phalcon\Tag::getTitle();
        }, $options), new \Twig_SimpleFunction('stylesheetLink', function ($parameters = null, $local = true) {
            return \Phalcon\Tag::stylesheetLink($parameters, $local);
        }, $options), new \Twig_SimpleFunction('javascriptInclude', function ($parameters = null, $local = true) {
            return \Phalcon\Tag::javascriptInclude($parameters, $local);
        }, $options), new \Twig_SimpleFunction('image', function ($parameters) {
            return \Phalcon\Tag::image($parameters);
        }, $options), new \Twig_SimpleFunction('friendlyTitle', function ($text, $separator = null, $lowercase = true) {
            return \Phalcon\Tag::friendlyTitle($text, $separator, $lowercase);
        }, $options), new \Twig_SimpleFunction('getDocType', function () {
            return \Phalcon\Tag::getDocType();
        }, $options), new \Twig_SimpleFunction('getSecurityToken', function () use($di) {
            return $di->get("security")->getToken();
        }, $options), new \Twig_SimpleFunction('getSecurityTokenKey', function () use($di) {
            return $di->get("security")->getTokenKey();
        }, $options), new \Twig_SimpleFunction('url', function ($route) use($di) {
            return $di->get("url")->get($route);
        }, $options)];
        if (!empty($userFunctions)) {
            $functions = array_merge($functions, $userFunctions);
        }
        foreach ($functions as $function) {
            $this->twig->addFunction($function);
        }
    }