Example #1
0
 /**
  * Constructor
  *
  * @param \src\config\config $src_config The src configuration
  * @param \src\path_helper $path_helper src path helper
  * @param \src\extension\manager $extension_manager src extension manager
  * @param \Twig_LoaderInterface $loader Twig loader interface
  * @param array $options Array of options to pass to Twig
  */
 public function __construct($src_config, \src\path_helper $path_helper, \src\extension\manager $extension_manager = null, \Twig_LoaderInterface $loader = null, $options = array())
 {
     $this->src_config = $src_config;
     $this->src_path_helper = $path_helper;
     $this->extension_manager = $extension_manager;
     $this->src_root_path = $this->src_path_helper->get_src_root_path();
     $this->web_root_path = $this->src_path_helper->get_web_root_path();
     return parent::__construct($loader, $options);
 }
Example #2
0
 /**
  * Constructor.
  *
  * @param \src\path_helper $path_helper
  * @param \src\config\config $config
  * @param \src\user $user
  * @param \src\template\context $context template context
  * @param \src\extension\manager $extension_manager extension manager, if null then template events will not be invoked
  */
 public function __construct(\src\path_helper $path_helper, $config, $user, \src\template\context $context, \src\extension\manager $extension_manager = null)
 {
     $this->path_helper = $path_helper;
     $this->src_root_path = $path_helper->get_src_root_path();
     $this->php_ext = $path_helper->get_php_ext();
     $this->config = $config;
     $this->user = $user;
     $this->context = $context;
     $this->extension_manager = $extension_manager;
     $this->cachepath = $this->src_root_path . 'cache/twig/';
     // Initiate the loader, __main__ namespace paths will be setup later in set_style_names()
     $loader = new \src\template\twig\loader('');
     $this->twig = new \src\template\twig\environment($this->config, $this->path_helper, $this->extension_manager, $loader, array('cache' => defined('IN_INSTALL') ? false : $this->cachepath, 'debug' => defined('DEBUG'), 'auto_reload' => (bool) $this->config['load_tplcompile'], 'autoescape' => false));
     $this->twig->addExtension(new \src\template\twig\extension($this->context, $this->user));
     if (defined('DEBUG')) {
         $this->twig->addExtension(new \Twig_Extension_Debug());
     }
     $lexer = new \src\template\twig\lexer($this->twig);
     $this->twig->setLexer($lexer);
     // Add admin namespace
     if ($this->path_helper->get_adm_relative_path() !== null && is_dir($this->src_root_path . $this->path_helper->get_adm_relative_path() . 'style/')) {
         $this->twig->getLoader()->setPaths($this->src_root_path . $this->path_helper->get_adm_relative_path() . 'style/', 'admin');
     }
 }
Example #3
0
 /**
  * Get URL
  *
  * @return string URL
  */
 public function get_url()
 {
     return $this->path_helper->update_web_root_path($this->join_url($this->components));
 }