• Модуль: landing
  • Путь к файлу: ~/bitrix/modules/landing/lib/zip/nginx/archiveentry.php
  • Класс: BitrixLandingZipNginxArchiveEntry
  • Вызов: ArchiveEntry::createFromFile
static function createFromFile(array $fileArray)
{
	$zipEntry = new static;
	$zipEntry->name = $fileArray['ORIGINAL_NAME'];
	$zipEntry->fileId = $fileArray['ID'];
	$zipEntry->size = $fileArray['FILE_SIZE'];

	$fromClouds = false;
	$filename = $fileArray['SRC'];

	if (isset($fileArray['HANDLER_ID']) && !empty($fileArray['HANDLER_ID']))
	{
		$fromClouds = true;
	}

	unset($fileArray);

	if ($fromClouds)
	{
		$filename = preg_replace('~^(http[s]?)(://)~i', '\1.' , $filename);
		$cloudUploadPath = Option::get(
			'main',
			'bx_cloud_upload',
			'/upload/bx_cloud_upload/'
		);
		$zipEntry->path = $cloudUploadPath . $filename;
		unset($cloudUploadPath);
	}
	else
	{
		$zipEntry->path = self::encodeUrn(
			Encoding::convertEncoding($filename, LANG_CHARSET, 'UTF-8')
		);
	}
	unset($filename);

	return $zipEntry;
}