• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/services/base/usergrouprestriction.php
  • Класс: BitrixSaleServicesBaseUserGroupRestriction
  • Вызов: UserGroupRestriction::filterServicesArray
static function filterServicesArray(Entity $entity, array $restrictionFields)
{
	if(empty($restrictionFields))
		return [];

	$groups = static::extractParams($entity);

	if(empty($groups))
	{
		return [];
	}

	$entityIds = array_keys($restrictionFields);

	$res = UserGroupRestrictionTable::getList(array(
		'filter' => array(
			'=ENTITY_TYPE_ID' => static::getEntityTypeId(),
			'=ENTITY_ID' => $entityIds,
			'=GROUP_ID' => $groups
		)
	));

	$result = [];

	while($row = $res->fetch())
	{
		if(!isset($result[$row['ENTITY_ID']]))
		{
			$result[$row['ENTITY_ID']] = true;
		}
	}

	return array_keys($result);
}