• Модуль: tasks
  • Путь к файлу: ~/bitrix/modules/tasks/lib/provider/templateprovider.php
  • Класс: BitrixTasksProviderTemplateProvider
  • Вызов: TemplateProvider::makeArSelect
private function makeArSelect(): self
{
	$defaultSelect = array();
	$alwaysSelect = array();
	foreach($this->arFields as $field => $rule)
	{
		if(
			isset($rule['DEFAULT'])
			// && $rule['DEFAULT']
		)
		{
			$defaultSelect[] = $field;
		}
		if(
			isset($rule['ALWAYS'])
			// && $rule['ALWAYS']
		)
		{
			$alwaysSelect[] = $field;
		}
	}

	if (count($this->arSelect) <= 0)
	{
		$this->arSelect = $defaultSelect;
	}
	elseif(in_array("*", $this->arSelect))
	{
		$this->arSelect = array_diff(array_merge($defaultSelect, $this->arSelect), array("*"));
	}

	$this->arSelect = array_merge($this->arSelect, $alwaysSelect);

	if (!in_array("ID", $this->arSelect))
	{
		$this->arSelect[] = "ID";
	}

	return $this;
}