- Модуль: iblock
- Путь к файлу: ~/bitrix/modules/iblock/classes/general/cml2.php
- Класс: CIBlockCMLImport
- Вызов: CIBlockCMLImport::MakeFileArray
function MakeFileArray($file, $fields = array())
{
if(is_array($file))
{
if(
array_key_exists($this->mess["IBLOCK_XML2_BX_URL"], $file)
&& $file[$this->mess["IBLOCK_XML2_BX_URL"]] <> ''
)
{
if (Loader::includeModule('clouds'))
{
$bucket = CCloudStorage::FindBucketByFile($file[$this->mess["IBLOCK_XML2_BX_URL"]]);
if(is_object($bucket) && $bucket->READ_ONLY === "Y")
{
return array(
"name" => $file[$this->mess["IBLOCK_XML2_BX_ORIGINAL_NAME"]],
"description" => $file[$this->mess["IBLOCK_XML2_DESCRIPTION"]],
"tmp_name" => $file[$this->mess["IBLOCK_XML2_BX_URL"]],
"file_size" => $file[$this->mess["IBLOCK_XML2_BX_FILE_SIZE"]],
"width" => $file[$this->mess["IBLOCK_XML2_BX_FILE_WIDTH"]],
"height" => $file[$this->mess["IBLOCK_XML2_BX_FILE_HEIGHT"]],
"type" => $file[$this->mess["IBLOCK_XML2_BX_FILE_CONTENT_TYPE"]],
"content" => "", //Fake field in order to avoid warning
"bucket" => $bucket,
);
}
}
return CFile::MakeFileArray($this->URLEncode($file[$this->mess["IBLOCK_XML2_BX_URL"]])); //Download from the cloud
}
}
else
{
if ($file <> '')
{
$external_id = md5($file);
if (is_file($this->files_dir.$file))
return CFile::MakeFileArray($this->files_dir.$file, false, false, $external_id);
$fileId = $this->CheckFileByName($external_id, $fields);
if ($fileId > 0)
return CFile::MakeFileArray($fileId);
}
}
return array("tmp_name"=>"", "del"=>"Y");
}