/**
  * Статическая функция, которая возвращает
  * экземпляр класса или создает новый при
  * необходимости
  * @return Smarty
  */
 public static function getInstance()
 {
     if (null === self::$_instance) {
         self::$_instance = new Smarty();
         self::$_instance->template_dir = SMARTY_TEMPLATE_DIR;
         self::$_instance->compile_dir = SMARTY_COMPILE_DIR;
         self::$_instance->cache_dir = SMARTY_CACHE_DIR;
         self::$_instance->config_dir = SMARTY_CONFIG_DIR;
     }
     return self::$_instance;
 }
Example #2
0
 function generate($content_view, $layout = null, $data = null)
 {
     require_once "./inc/smarty/Smarty.class.php";
     require_once "./inc/classes/smarty_singleton.class.php";
     $smarty = Smarty_Singleton::getInstance();
     if (null === $layout) {
         $layout = 'default_layout.tpl';
     }
     $data['layout'] = $this->load_layout_data($layout);
     //Загрузка данных для обертки
     $data['controller_name'] = Route::$controller_name;
     $data['action_name'] = Route::$action_name;
     //Пути до шаблона, который будет загружен помимо контента из БД
     $data['template_path'] = $this->template_path;
     $data['content_view'] = $content_view;
     $smarty->assign('data', $data);
     $smarty->display($this->layout_path . $layout);
 }