• Модуль: sale
  • Путь к файлу: ~/bitrix/modules/sale/lib/location/import/compiler/compiler.php
  • Класс: BitrixSaleLocationImportCompilerCompiler
  • Вызов: Compiler::getBundleFromFile
private function getBundleFromFile($id)
{
	$data = unserialize(file_get_contents($_SERVER['DOCUMENT_ROOT'].$this->grabbedStuffDir.$id));

	foreach($data as $k => &$item)
	{
		if(in_array($item['NAME'], array('Прочее', 'Общероссийские', 'Универсальное', 'Другие города региона')))
		{
			unset($data[$k]);
			continue;
		}

		//$item['NAME'] = CharsetConverter::ConvertCharset($item['NAME'], 'UTF-8', SITE_CHARSET); // temp
		if(isset($this->typeMap[$item['TYPE_CODE']]))
			$item['TYPE_CODE'] = $this->typeMap[$item['TYPE_CODE']];

		// type "OTHER" which is a child of type "REGION" is actually a "SUBREGION"
		if($item['TYPE_CODE'] == 'OTHER')
		{
			$parentType = $this->yaIdType[$item['PARENT_ID']];

			if($parentType == 'REGION')
				$item['TYPE_CODE'] = 'SUBREGION';
		}

		$code = $this->addLeadingZero($this->codeOffset, $this->leading);
		$this->yaIdType[$item['ID']] = $item['TYPE_CODE'];

		$this->relations[$item['CODE']] = $item['PARENT_CODE'];
		$this->code2type[$item['CODE']] = $item['TYPE_CODE'];

		$ruName = $item['NAME'];

		//if($this->optionConvertNames)
		//	$ruName = CharsetConverter::ConvertCharset($ruName, 'UTF-8', SITE_CHARSET);

		$item['NAME'] = array();
		$item['NAME']['RU']['NAME'] = $ruName.($this->options['includeYaInfo2Name'] ? ' ('.$item['TYPE_CODE'].', '.$item['ID'].')' : '');
		//$item['NAME.EN.NAME'] = '[no-translation]'; // attach translations from old import files
		//$item['NAME.UA.NAME'] = '[no-translation]'; // attach translations from old import files

		$item['EXT']['YAMARKET'][] = $item['ID'];

		//unset($item['ID']);
		//unset($item['PARENT_ID']);
	}

	return $data;
}