• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/services/base/restrictionmanager.php
  • Класс: BitrixSaleServicesBaseRestrictionManager
  • Вызов: RestrictionManager::setupDefaultRestrictions
static function setupDefaultRestrictions(RestrictableService $service): Result
{
	$result = new Result();

	$startupRestrictions = $service->getStartupRestrictions();

	(new Event(
		'sale',
		static::ON_STARTUP_SERVICE_RESTRICTIONS_EVENT_NAME,
		[
			'STARTUP_RESTRICTIONS_COLLECTION' => $startupRestrictions,
			'SERVICE_ID' => $service->getServiceId(),
		]
	))->send();

	self::clearAlreadyUsedByServiceRestrictions($service->getServiceId(), $startupRestrictions);

	/** @var RestrictionInfo $restrictionInfo */
	foreach ($startupRestrictions as $restrictionInfo)
	{
		$applyResult = static::applyRestriction($service->getServiceId(), $restrictionInfo);
		$result->addErrors($applyResult->getErrors());
	}

	return $result;
}