Ejemplo n.º 1
0
 /**
  * @return HTML - Дерево комментариев
  * @param int $page_id - ID страницы для которой нужно создать дерево
  * @param string $templ_name - Шаблон оформления дерева
  * @desc МАКРОС: Строит список (дерево) комментариев для указанной страницы
  */
 public function tree($page_id, $templ_name = 'tree')
 {
     $key = 'comments' . $page_id;
     if (!($data = cache::get($key))) {
         $templ_file = '/comments/' . $templ_name . '.tpl';
         $TEMPLATE = page::getTemplate($templ_file);
         if (!is_array($TEMPLATE)) {
             return page::errorNotFound('comments.tree', $templ_file);
         }
         // Получаем список комментариев
         $tree = new comments($page_id);
         $tree->onlyActive(!reg::getKey('/comments/show_noactive'));
         $list = $this->getCommentList($tree, 0, $TEMPLATE);
         page::assign('obj_id', $page_id);
         if (empty($list)) {
             $data = page::parse($TEMPLATE['empty']);
         } else {
             page::assign('list', $list);
             page::assign('count', $tree->getCount());
             $data = page::parse($TEMPLATE['frame']);
         }
         // Записываем в кэш
         cache::set($key, $data);
     }
     return $data;
 }