public static function CheckPermissions($ID) { global $USER, $APPLICATION; $ID = intVal($ID); if (CForumUser::IsAdmin()) { return true; } $dbr = CForumPMFolder::GetByID($ID); if ($arRes = $dbr->Fetch()) { if ($arRes["USER_ID"] == $USER->GetID() || $arRes["USER_ID"] == 0) { return true; } } return false; }
********************************************************************/ $arResult["count"] = CForumPrivateMessage::PMSize($USER->GetID(), COption::GetOptionInt("forum", "MaxPrivateMessages", 100)); $arResult["count"] = round($arResult["count"] * 100); $arResult["SortingExTitle"] = SortingEx("title"); $arResult["SortingExCount"] = SortingEx("count"); $arResult["FORUM_SystemFolder"] = FORUM_SystemFolder; $arResult["SYSTEM_FOLDER"] = array(); $arResult["USER_FOLDER"] = array(); $arResult["sessid"] = bitrix_sessid_post(); $arResult["FID"] = is_array($_REQUEST["FID"]) && !empty($_REQUEST["FID"]) ? $_REQUEST["FID"] : $arParams["FID"]; $arResult["action"] = $arParams["mode"] == "new" ? "save" : "update"; $arResult["FOLDER"] = array(); /*******************************************************************/ if ($arParams["mode"] == "edit" || $arParams["mode"] == "new") { if (intVal($arParams["FID"]) > 0) { $db_res = CForumPMFolder::GetByID($arParams["FID"]); if ($db_res && ($res = $db_res->GetNext())) { $arResult["FOLDER"] = $res; $arResult["POST_VALUES"]["FOLDER_TITLE"] = $res["TITLE"]; } } if (!empty($arError)) { $arResult["POST_VALUES"]["FOLDER_TITLE"] = htmlspecialcharsEx($_REQUEST["FOLDER_TITLE"]); } } else { for ($ii = 1; $ii <= FORUM_SystemFolder; $ii++) { $arResult["SYSTEM_FOLDER"][$ii]["cnt"] = ""; $arFilter = $ii == 2 ? array("FOLDER_ID" => $ii, "USER_ID" => $USER->GetId(), "OWNER_ID" => $USER->GetId()) : array("FOLDER_ID" => $ii, "USER_ID" => $USER->GetId()); $db_res = CForumPrivateMessage::GetList(array(), $arFilter, true); if ($db_res && ($res = $db_res->GetNext())) { $arResult["SYSTEM_FOLDER"][$ii]["cnt"] = intVal($res["CNT"]);
public static function CheckPermissions($ID) { global $USER, $APPLICATION; $ID = intVal($ID); if($USER->IsAdmin()||$APPLICATION->GetGroupRight("forum")>="W") return true; $dbr = CForumPMFolder::GetByID($ID); if($arRes = $dbr->Fetch()) { if(($arRes["USER_ID"]==$USER->GetID())||($arRes["USER_ID"]==0)) return true; } return false; }