• Модуль: translate
  • Путь к файлу: ~/bitrix/modules/translate/lib/controller/import/csv.php
  • Класс: BitrixTranslateControllerImportCsv
  • Вызов: Csv::uploadAction
public function uploadAction(): array
{
	$result = [];
	$success = false;
	if (
		isset($_FILES['csvFile'], $_FILES['csvFile']['tmp_name'])
		&& ($_FILES['csvFile']['error'] == 0)
		&& file_exists($_FILES['csvFile']['tmp_name'])
	)
	{
		if (
			(filesize($_FILES['csvFile']['tmp_name']) > 0)
			&& (mb_substr($_FILES['csvFile']['name'], -4) === '.csv')
		)
		{
			if ($this->moveUploadedFile($_FILES['csvFile'], '.csv'))
			{
				$this->saveProgressParameters();
				$success = true;
			}
		}
		else
		{
			$this->addError(new MainError(Loc::getMessage('TR_IMPORT_EMPTY_FILE_ERROR')));
		}
	}
	else
	{
		$this->addError(new MainError(Loc::getMessage('TR_IMPORT_EMPTY_FILE_ERROR')));
	}

	if ($success)
	{
		$result['SUMMARY'] = Loc::getMessage('TR_IMPORT_UPLOAD_OK');
	}

	$result['STATUS'] = TranslateControllerSTATUS_COMPLETED;

	return $result;
}