- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/rest/controllers/task.php
- Класс: BitrixTasksRestControllersTask
- Вызов: Task::addAction
public function addAction(array $fields, array $params = []): ?array
{
$fields = $this->filterFields($fields);
$fields = $this->formatDateFieldsForInput($fields);
$fields = $this->processFiles(0, $fields);
$fields = $this->processCrmElements($fields);
$fields = $this->processScenario($fields, $params);
try
{
$task = CTaskItem::add($fields, $this->getCurrentUser()->getId(), $params);
}
catch (Exception $exception)
{
if ($errors = unserialize($exception->getMessage(), ['allowed_classes' => false]))
{
$error = $errors[0];
$this->addError(new Error($error['text'], $error['id']));
}
else
{
$this->addError(new Error($exception->getMessage()));
}
return null;
}
if (isset($params['PLATFORM']) && $params['PLATFORM'] === 'mobile')
{
AnalyticLogger::logToFile('addTask');
}
return $this->getAction($task);
}