Esempio n. 1
0
 public function actionView($id)
 {
     $query = strtolower($id);
     $article = (new \Stack\Entity\Article())->fetchById($query);
     if (!$article->exists()) {
         return null;
     }
     if ($id != $article->id) {
         \Staq\Util::httpRedirect(\Staq\Util::getModelControllerUrl($article), 301);
     }
     $view = $this->createView();
     $view['article'] = $article;
     return $view;
 }
Esempio n. 2
0
 protected function extendTwig()
 {
     $publicFilter = new \Twig_SimpleFilter('public', ['Staq\\Util', 'getPublicUrl']);
     $this->twig->addFilter($publicFilter);
     $publicFunction = new \Twig_SimpleFunction('public', ['Staq\\Util', 'getPublicUrl']);
     $this->twig->addFunction($publicFunction);
     $assetFunction = new \Twig_SimpleFunction('asset', ['Staq\\Util', 'getAssetUrl']);
     $this->twig->addFunction($assetFunction);
     $routeFunction = new \Twig_SimpleFunction('route', ['Staq\\Util', 'getControllerUrl']);
     $this->twig->addFunction($routeFunction);
     $routeFunction = new \Twig_SimpleFunction('route_model_*', function ($action, $model) {
         return \Staq\Util::getModelControllerUrl($model, $action);
     });
     $this->twig->addFunction($routeFunction);
     $routeFunction = new \Twig_SimpleFunction('route_model', ['Staq\\Util', 'getModelControllerUrl']);
     $this->twig->addFunction($routeFunction);
     $findFunction = new \Twig_SimpleFunction('find_template', array(get_class($this), 'findTemplate'));
     $this->twig->addFunction($findFunction);
     if ($this->debug) {
         $this->twig->addExtension(new \Twig_Extension_Debug());
     }
 }