• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/manager/task/elapsedtime.php
  • Класс: Bitrix\Tasks\Manager\Task\ElapsedTime
  • Вызов: ElapsedTime::update
static function update($userId, $itemId, array $data, array $parameters = array('PUBLIC_MODE' => false))
{
	$errors = static::ensureHaveErrorCollection($parameters);

	if ($parameters['PUBLIC_MODE'])
	{
		$data = static::filterData($data, \CTaskElapsedItem::getPublicFieldMap(), $errors);
	}

	$result = array(
		"DATA" => array(),
		"ERRORS" => array(),
	);

	if ($errors->checkNoFatals())
	{
		$taskId = 0;
		if(array_key_exists('TASK_ID', $parameters))
		{
			$taskId = intval($parameters['TASK_ID']);
		}
		if(!$taskId)
		{
			$taskId = static::getTaskId($itemId);
		}

		$task = static::getTask($userId, $taskId);
		$item = new \CTaskElapsedItem($task, $itemId);
		$item->update($data);

		$result['DATA']['ID'] = $item->getId();

		// bad practice, but as an exception for this time
		if($parameters['RETURN_ENTITY'])
		{
			$result = static::get($userId, $taskId, $itemId, $parameters);
		}
	}

	return $result;
}