• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/control/templatedependence.php
  • Класс: BitrixTasksControlTemplateDependence
  • Вызов: TemplateDependence::set
public function set(array $data): void
{
	if (
		!array_key_exists(self::FIELD_DEPEND, $data)
		|| !is_array($data[self::FIELD_DEPEND])
	)
	{
		return;
	}

	$this->loadByTemplate();
	$this->deleteByTemplate();

	if (empty($data[self::FIELD_DEPEND]))
	{
		return;
	}

	$depends = array_values($data[self::FIELD_DEPEND]);

	if (empty($depends))
	{
		return;
	}

	$insertRows = [];
	foreach ($depends as $depend)
	{
		$depend = (int) $depend;

		if ($depend < 1)
		{
			continue;
		}
		$insertRows[] = '('.$this->templateId.', '. $depend .')';
	}

	if (empty($insertRows))
	{
		return;
	}

	$sql = "
		INSERT IGNORE INTO ". TemplateDependenceTable::getTableName() ."
		(`TEMPLATE_ID`, `DEPENDS_ON_ID`)
		VALUES
		". implode(", ", $insertRows) ."
	";

	Application::getConnection()->query($sql);
}