- Модуль: bizproc
- Путь к файлу: ~/bitrix/modules/bizproc/lib/integration/rest/appconfiguration.php
- Класс: BitrixBizprocIntegrationRestAppConfiguration
- Вызов: AppConfiguration::importScript
static function importScript($importData, int $userId, int $appId)
{
$result = [];
if (!isset($importData['CONTENT']['DATA']))
{
return false;
}
$item = $importData['CONTENT']['DATA'];
if (
in_array($item['MODULE_ID'], static::$accessModules)
&& Loader::includeModule($item['MODULE_ID'])
&& class_exists($item['ENTITY'])
)
{
if (is_subclass_of($item['ENTITY'], '\IBPWorkflowDocument'))
{
if (isset($importData['RATIO']['CRM_STATUS']) && $item['DOCUMENT_TYPE'] === 'DEAL')
{
if (is_array($item['WORKFLOW_TEMPLATE']))
{
$item['WORKFLOW_TEMPLATE'] = static::changeDealCategory(
$item['WORKFLOW_TEMPLATE'],
$importData['RATIO']['CRM_STATUS']
);
}
}
if ($appId > 0)
{
$item['ORIGINATOR_ID'] = 'REST_APP';
$item['ORIGIN_ID'] = $appId;
}
$importResult = ScriptManager::importScript($item, $userId);
if ($importResult->isSuccess())
{
$result['OWNER'] = [
'ENTITY_TYPE' => self::OWNER_ENTITY_TYPE_BIZPROC_SCRIPT,
'ENTITY' => $importResult->getId(),
];
}
else
{
$result['ERROR_ACTION'] = $result['ERROR_MESSAGES'] = current($importResult->getErrorMessages());
}
}
}
return $result;
}