/** * @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; }