• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/integration/crm/timeline/taskrepository.php
  • Класс: BitrixTasksIntegrationCRMTimelineTaskRepository
  • Вызов: TaskRepository::getBindings
public function getBindings(): Bindings
{
	if (!is_null($this->bindings))
	{
		return $this->bindings;
	}

	if (is_null($this->getTask()))
	{
		$this->bindings = new Bindings();
		return $this->bindings;
	}

	if (empty($this->getTask()->getCrmFields()))
	{
		$this->bindings = new Bindings();
		return $this->bindings;
	}

	$bindings = [];
	$crmFieldsCollection = (new Mapper())->map($this->getTask()->getCrmFields());
	foreach ($crmFieldsCollection as $crmField)
	{
		try
		{
			$bindings[] = new ItemIdentifier($crmField->getTypeId(), $crmField->getId());
		}
		catch (ArgumentException $exception)
		{
			continue;
		}
	}

	$this->bindings = new Bindings(...$bindings);

	return $this->bindings;
}