- Модуль: forum
- Путь к файлу: ~/bitrix/modules/forum/classes/general/topic.php
- Класс: CAllForumTopic
- Вызов: CAllForumTopic::GetNeighboringTopics
static function GetNeighboringTopics($TID, $arUserGroups) // out-of-date function
{
$TID = intval($TID);
$arTopic = CForumTopic::GetByID($TID);
if (!$arTopic) return False;
//-- PREV_TOPIC
$arFilter = array(
"FORUM_ID" => $arTopic["FORUM_ID"],
" $arTopic["LAST_POST_DATE"]
);
if (CForumNew::GetUserPermission($arTopic["FORUM_ID"], $arUserGroups)<"Q")
$arFilter["APPROVED"] = "Y";
$db_res = CForumTopic::GetList(array("LAST_POST_DATE"=>"DESC"), $arFilter, false, 1);
$PREV_TOPIC = 0;
if ($ar_res = $db_res->Fetch()) $PREV_TOPIC = $ar_res["ID"];
//-- NEXT_TOPIC
$arFilter = array(
"FORUM_ID" => $arTopic["FORUM_ID"],
">LAST_POST_DATE" => $arTopic["LAST_POST_DATE"]
);
if (CForumNew::GetUserPermission($arTopic["FORUM_ID"], $arUserGroups)<"Q")
$arFilter["APPROVED"] = "Y";
$db_res = CForumTopic::GetList(array("LAST_POST_DATE"=>"ASC"), $arFilter, false, 1);
$NEXT_TOPIC = 0;
if ($ar_res = $db_res->Fetch()) $NEXT_TOPIC = $ar_res["ID"];
return array($PREV_TOPIC, $NEXT_TOPIC);
}