• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/integration/trash/task.php
  • Класс: BitrixTasksIntegrationTrashTask
  • Вызов: Task::restoreTaskAdditionalData
static function restoreTaskAdditionalData($taskId, $action, array $data = [])
{
	$result = new Result();

	try
	{
		foreach ($data as $value)
		{
			switch ($action)
			{
				case 'MEMBERS':
					$member = new CTaskMembers;
					$member->Add(
						[
							'TASK_ID' => $taskId,
							'USER_ID' => $value['USER_ID'],
							'TYPE'    => $value['TYPE']
						]
					);
					break;

				//					case 'TAGS':
				//						$tag = new CTaskTags;
				//						$tag->Add(
				//							[
				//								'TASK_ID' => $taskId,
				//								'USER_ID' => $value['USER_ID'],
				//								'NAME'    => $value['NAME']
				//							]
				//						);
				//						break;

				case 'DEPENDENCE_TASK':
					$tag = new CTaskDependence;
					$tag->Add(
						[
							'TASK_ID'       => $taskId,
							'USER_ID'       => $value['USER_ID'],
							'DEPENDS_ON_ID' => $value['DEPENDS_ON_ID']
						]
					);
					break;

				//					case 'PARAMS':
				//						ParameterTable::add(
				//							[
				//								'TASK_ID' => $taskId,
				//								'CODE'    => $value['CODE'],
				//								'VALUE'   => $value['VALUE']
				//							]
				//						);
				//						break;
			}
		}
	}
	catch (Exception $e)
	{
		$result->addError(new Error($e->getMessage(), $e->getCode()));
	}

	return $result;

}