• Модуль: main
  • Путь к файлу: ~/bitrix/modules/main/lib/userfield/access/permission/userfieldpermissiontable.php
  • Класс: BitrixMainUserFieldAccessPermissionUserFieldPermissionTable
  • Вызов: UserFieldPermissionTable::saveEntityConfiguration
static function saveEntityConfiguration(
	$accessCodes,
	string $fieldName,
	int $entityTypeId,
	string $permissionId,
	?string $entityTypeName = null
): void
{
	if ($userField = self::getUserFieldId($fieldName, $entityTypeName))
	{
		self::removeEntityConfiguration($userField['ID'], $entityTypeId);
		if (is_array($accessCodes))
		{
			foreach ($accessCodes as $accessCode)
			{
				/**
				 * @var $permission UserFieldPermission
				 */
				$permission = self::createObject([
					'ENTITY_TYPE_ID' => $entityTypeId,
					'USER_FIELD_ID' => $userField['ID'],
					'ACCESS_CODE' => $accessCode['ID'],
					'PERMISSION_ID' => $permissionId,
					'VALUE' => self::PERMISSION_ALLOWED
				]);
				$permission->save();
			}
		}
	}
}