• Модуль: crm
  • Путь к файлу: ~/bitrix/modules/crm/lib/integration/ui/entityselector/countryprovider.php
  • Класс: Bitrix\Crm\Integration\UI\EntitySelector\CountryProvider
  • Вызов: CountryProvider::makeItems
private function makeItems(): array
{
	$metadata = $this->fetchMetadata();
	$countries = $this->fetchCountries();
	if (empty($metadata) || empty($countries))
	{
		return [];
	}

	$items = [];
	foreach ($countries as $country)
	{
		if (!isset($metadata[$country['CODE']]))
		{
			continue; // skip not matched records
		}

		$items[] = $this->makeItem(
			(int)$country['ID'],
			(int)$metadata[$country['CODE']],
			(string)$country['CODE'],
			(string)$country['NAME']
		);
	}

	if ($this->isEmptyCountryEnabled)
	{
		array_unshift($items,$this->makeItem(
			static::GLOBAL_COUNTRY_ID,
			0,
			static::GLOBAL_COUNTRY_CODE,
			(string)Loc::getMessage('CRM_ENTITY_SELECTOR_EMPTY_COUNTRY')
		));
	}

	return $items;
}