- Модуль: landing
- Путь к файлу: ~/bitrix/modules/landing/lib/publicaction/block.php
- Класс: BitrixLandingPublicActionBlock
- Вызов: Block::uploadFile
static function uploadFile($block, $picture, $ext = false, array $params = [], $temp = false): PublicActionResult
{
static $mixedParams = ['picture'];
$result = new PublicActionResult();
$error = new BitrixLandingError;
$block = intval($block);
$landing = Landing::createInstance(
BlockCore::getLandingIdByBlockId($block),
['skip_blocks' => true]
);
if ($landing->exist())
{
$file = Manager::savePicture($picture, $ext, $params);
if ($file)
{
File::addToBlock($block, $file['ID'], Utils::isTrue($temp));
$result->setResult(array(
'id' => $file['ID'],
'src' => $file['SRC']
));
}
else
{
$error->addError(
'FILE_ERROR',
Loc::getMessage('LANDING_FILE_ERROR')
);
$result->setError($error);
}
}
else
{
$error->addError(
'BLOCK_NOT_FOUND',
Loc::getMessage('LANDING_BLOCK_NOT_FOUND')
);
$result->setError($error);
}
return $result;
}