• Модуль: bizproc
  • Путь к файлу: ~/bitrix/modules/bizproc/lib/integration/rest/appconfiguration.php
  • Класс: BitrixBizprocIntegrationRestAppConfiguration
  • Вызов: AppConfiguration::onEventImportController
static function onEventImportController(Event $event)
{
	$code = $event->getParameter('CODE');
	if (!static::$entityList[$code])
	{
		return null;
	}
	$data = $event->getParameters();

	if ($code !== self::ENTITY_BIZPROC_SCRIPT && !Helper::checkAccessManifest($data, static::$accessManifest))
	{
		return null;
	}

	if (
		$code === self::ENTITY_BIZPROC_SCRIPT
		&& !Helper::checkAccessManifest($data, ['bizproc_script'])
	)
	{
		return null;
	}

	$result = null;
	$userId = (int)$event->getParameter('USER_ID');

	$contextUser = $event->getParameter('CONTEXT_USER');
	$setting = new Setting($contextUser);
	$app = $setting->get(Setting::SETTING_APP_INFO);
	$appId = (int)$app['ID'];

	try
	{
		if (static::checkRequiredParams($code))
		{
			switch ($code)
			{
				case self::ENTITY_BIZPROC_MAIN:
					$result = static::importBizproc($data);
					break;
				case self::ENTITY_BIZPROC_CRM_TRIGGER:
					$result = static::importCrmTrigger($data);
					break;
				case self::ENTITY_BIZPROC_SCRIPT:
					$result = static::importScript($data, $userId, $appId);
					break;
			}
		}
	}
	catch (Exception $e)
	{
		$result['NEXT'] = false;
		$result['ERROR_ACTION'] = $e->getMessage();
		$result['ERROR_MESSAGES'] = Loc::getMessage(
			'BIZPROC_ERROR_CONFIGURATION_IMPORT_EXCEPTION',
			[
				'#CODE#' => $code,
			]
		);
	}

	return $result;
}