- Модуль: forum
- Путь к файлу: ~/bitrix/modules/forum/lib/comments/entity.php
- Класс: BitrixForumCommentsEntity
- Вызов: Entity::getPermission
public function getPermission($userId)
{
if (!array_key_exists($userId, self::$permissions))
{
self::$permissions[$userId] = [];
if (!array_key_exists($this->forum["ID"], self::$permissions[$userId]))
{
if (CForumUser::IsAdmin($userId))
$result = "Y";
else if ($this->forum["ACTIVE"] != "Y")
$result = "A";
else if (CForumUser::IsLocked($userId))
$result = CForumNew::GetPermissionUserDefault($this->forum["ID"]);
else
{
if (in_array($this->getType(), array('PH', 'TR', 'TM', 'IBLOCK')))
{
$result = 'Y';
}
else
{
$res = ForumTable::getList(array(
'filter' => array(
'=ID' => $this->forum["ID"],
'@XML_ID' => array(
'USERS_AND_GROUPS'
)
),
'select' => array('ID')
));
if ($forumFields = $res->fetch())
{
$result = 'Y';
}
else
{
$result = CForumNew::GetUserPermission($this->forum["ID"], $userId);
}
}
}
self::$permissions[$userId][$this->forum["ID"]] = $result;
}
}
return self::$permissions[$userId][$this->forum["ID"]];
}