- Модуль: tasks
- Путь к файлу: ~/bitrix/modules/tasks/lib/rest/controllers/task/checklist.php
- Класс: BitrixTasksRestControllersTaskChecklist
- Вызов: Checklist::saveAction
public function saveAction(int $taskId, array $items = [], array $parameters = [])
{
$userId = CurrentUser::get()->getId();
if (!TaskAccessController::can($userId, ActionDictionary::ACTION_CHECKLIST_SAVE, $taskId, $items))
{
$this->errorCollection->add(
[new Error(Loc::getMessage('TASKS_REST_TASK_CHECKLIST_ACCESS_DENIED'))]
);
return null;
}
foreach ($items as $id => $item)
{
$item['ID'] = ((int)($item['ID'] ?? null) === 0 ? null : (int)$item['ID']);
$item['IS_COMPLETE'] = (
($item['IS_COMPLETE'] === true)
|| ((int) $item['IS_COMPLETE'] > 0)
);
$item['IS_IMPORTANT'] = (
($item['IS_IMPORTANT'] === true)
|| ((int) $item['IS_IMPORTANT'] > 0)
);
$items[$item['NODE_ID']] = $item;
unset($items[$id]);
}
$result = TaskCheckListFacade::merge($taskId, $userId, $items, $parameters);
return $this->getReturn($result);
}