• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/util/scheduler.php
  • Класс: BitrixTasksUtilScheduler
  • Вызов: Scheduler::initializeTaskFromData
protected function initializeTaskFromData(array $taskData = array())
{
	if(empty($taskData))
	{
		$select = array(

			'ID',
			'MATCH_WORK_TIME',
			'ALLOW_CHANGE_DEADLINE',
			//'DURATION_TYPE',

			'START_DATE_PLAN',
			'END_DATE_PLAN',
			'CREATED_DATE',

			'RESPONSIBLE_ID',
			'CREATED_BY',
			'GROUP_ID',
			'STATUS' => 'REAL_STATUS',

		);

		$taskData = TaskTable::getList(array(
			'filter' => array('=ID' => $this->taskId),
			'select' => $select
		))->fetch();
	}
	else
	{
		if(!isset($taskData['MATCH_WORK_TIME']))
		{
			$taskData['MATCH_WORK_TIME'] = 'N'; // assume no
		}
	}

	if(!isset($taskData['ID']))
	{
		if($this->taskId)
		{
			$taskData['ID'] = $this->taskId;
		}
		else
		{
			$taskData['ID'] = PHP_INT_MAX;
		}
	}

	$this->taskPool[$this->taskId] = CTaskItem::constructWithPreloadedData($this->userId, $taskData);
	$this->taskPool[$this->taskId]->setCalendar($this->calendar);

	if($this->taskId > 0)
	{
		static::checkAccessThrowException($this->taskPool[$this->taskId]);
	}
}