• Модуль: landing
  • Путь к файлу: ~/bitrix/modules/landing/lib/publicaction/site.php
  • Класс: BitrixLandingPublicActionSite
  • Вызов: Site::setRights
static function setRights($id, $rights = [])
{
	static $mixedParams = ['rights'];

	$result = new PublicActionResult();
	$error = new BitrixLandingError;
	$result->setResult(false);
	$id = (int)$id;

	if (!is_array($rights))
	{
		$rights = [];
	}

	// check access for set rights
	if (!Rights::isAdmin())
	{
		$error->addError(
			'IS_NOT_ADMIN',
			Loc::getMessage('LANDING_IS_NOT_ADMIN_ERROR')
		);
		$result->setError($error);
	}
	else if (!Manager::checkFeature(Manager::FEATURE_PERMISSIONS_AVAILABLE))
	{
		$error->addError(
			'FEATURE_NOT_AVAIL',
			BitrixLandingRestrictionManager::getSystemErrorMessage(
				'limit_sites_access_permissions'
			)
		);
		$result->setError($error);
	}
	// set rights
	else
	{
		$result->setResult(
			Rights::setOperationsForSite(
				$id,
				$rights
			)
		);
	}

	return $result;
}