- Модуль: forum
- Путь к файлу: ~/bitrix/modules/forum/classes/general/forum_new.php
- Класс: CAllForumNew
- Вызов: CAllForumNew::SetLabelsBeRead
static function SetLabelsBeRead($ID, $arUserGroups) // out-of-date function
{
$ID = intval($ID);
$_SESSION["read_forum_".$ID] = "0";
$strPerms = CForumNew::GetUserPermission($ID, $arUserGroups);
$iCurFirstReadForum = 0;
if ($strPerms > "Q"):
$db_res = CForumMessage::GetList(array("ID"=>"DESC"), array("FORUM_ID" => $ID, "APPROVED" => "N"), false, 1);
if ($db_res && $res = $db_res->Fetch()):
$iCurFirstReadForum = intval($res["ID"]);
endif;
endif;
$res = CForumNew::GetByID($ID);
$iCurFirstReadForum = intval($res["LAST_MESSAGE_ID"]);
$_SESSION["first_read_forum_".$ID] = $iCurFirstReadForum;
$arForumCookie = array();
$read_forum_cookie = COption::GetOptionString("main", "cookie_name", "BITRIX_SM")."_FORUM_0";
if (isset($_COOKIE[$read_forum_cookie]) && $_COOKIE[$read_forum_cookie] <> '')
{
$arForumCookie = explode("/", $_COOKIE[$read_forum_cookie]);
}
$i = 0;
$arCookieVal = array();
while ($i < count($arForumCookie))
{
if (intval($arForumCookie[$i])!=$ID)
{
$arCookieVal[] = intval($arForumCookie[$i])."/".intval($arForumCookie[$i+1]);
}
$i += 2;
}
$arCookieVal[] = $ID."/".$iCurFirstReadForum;
$_COOKIE[$read_forum_cookie] = implode("/", $arCookieVal);
// $GLOBALS["APPLICATION"]->set_cookie($read_forum_cookie, $strCookieVal, false, "/", false, false, "Y", "");
$GLOBALS["APPLICATION"]->set_cookie("FORUM_0", implode("/", $arCookieVal), false, "/", false, false, "Y", false);
return true;
}