Esempio n. 1
0
 /**
  * @return HTML
  * @param int $page_id - ID страницы
  * @param string $templ_name - Шаблон оформления
  * @desc МАКРОС: Выводит количество комментариев для указанной страницы
  */
 public function count($page_id, $templ_name = 'count')
 {
     $key = 'count_comments' . $page_id;
     if (($data = cache::get($key)) && isset($data[$templ_name])) {
         $html = $data[$templ_name];
     } else {
         $templ_file = '/comments/' . $templ_name . '.tpl';
         $TEMPLATE = page::getTemplate($templ_file);
         if (!is_array($TEMPLATE)) {
             return page::errorNotFound('comments.count', $templ_file);
         }
         // Получаем список комментариев
         $count = comments::getAllCount($page_id);
         page::assign('obj_id', $page_id);
         page::assign('count', $count);
         if (empty($count) && isset($TEMPLATE['empty'])) {
             $html = page::parse($TEMPLATE['empty']);
         } else {
             $html = page::parse($TEMPLATE['frame']);
         }
         // Записываем в кэш
         $data[$templ_name] = $html;
         cache::set($key, $data);
     }
     return $html;
 }