• Модуль: socialnetwork
  • Путь к файлу: ~/bitrix/modules/socialnetwork/lib/livefeed/blogpost.php
  • Класс: BitrixSocialnetworkLivefeedBlogPost
  • Вызов: BlogPost::getPermissions
protected function getPermissions(array $post): string
{
	global $USER;

	$result = self::PERMISSION_DENY;

	if (Loader::includeModule('blog'))
	{
		if ((int)$post['AUTHOR_ID'] === (int)$USER->getId())
		{
			$result = self::PERMISSION_FULL;
		}
		else
		{
			if (
				!empty($post['BLOG_ID'])
				&& ModuleManager::isModuleInstalled('idea')
				&& (int)$post['BLOG_ID'] === $this->getIdeaBlogId()
			)
			{
				$perms = CBlogPost::getBlogUserPostPerms($post['ID'], (int)$USER->getId());
			}
			else
			{
				$perms = CBlogPost::getSocNetPostPerms([
					'POST_ID' => $post['ID'],
					'NEED_FULL' => true,
					'USER_ID' => false,
					'POST_AUTHOR_ID' => $post['AUTHOR_ID'],
					'PUBLIC' => false,
					'LOG_ID' => false,
				]);
			}

			if ($perms >= BLOG_PERMS_FULL)
			{
				$result = self::PERMISSION_FULL;
			}
			elseif ($perms >= BLOG_PERMS_READ)
			{
				$result = self::PERMISSION_READ;
			}
		}
	}

	return $result;
}