Ejemplo n.º 1
0
	$arParams["UPLOAD_WEBDAV_ELEMENT_CID"] = __main_post_form_get_cid_webdav();
}

/***************** Show files from array ***************************/
$b = reset($arParams["FILES"]["VALUE"]); reset($arParams["UPLOAD_FILE"]["INPUT_VALUE"]);
$arFile = ($b ? $b : current($arParams["UPLOAD_FILE"]["INPUT_VALUE"]));
while ($arFile)
{
	$arFile = (is_array($arFile) ? $arFile :
		(array_key_exists($arFile, $arParams["UPLOAD_FILE"]["INPUT_VALUE_ARRAY"]) ? $arParams["UPLOAD_FILE"]["INPUT_VALUE_ARRAY"][$arFile] :
			CFile::GetFileArray($arFile)));
	$arFile["THUMBNAIL"] = (isset($arFile["src"]) ? $arFile["src"] : $arFile["THUMBNAIL"]); // for Blog only
	if ((substr($arFile["CONTENT_TYPE"], 0, 6) == "image/") && empty($arFile["THUMBNAIL"]))
	{
		$tmp = array("fileID" => $arFile["ID"], "fileContentType" => $arFile["CONTENT_TYPE"]);
		__MPF_ImageResizeHandler($tmp);
		if (!empty($tmp['img_thumb_src']))
			$arFile["THUMBNAIL"] = $tmp['img_thumb_src'];
		if (!empty($tmp['img_source_src']))
		{
			$arFile["~SRC"] = $arFile["SRC"];
			$arFile["SRC"] = $tmp['img_source_src'];
		}
	}

	$arParams["FILES"]["VALUE_JS"][strVal($arFile["ID"])] = array(
		"element_id" => $arFile["ID"],
		"element_name" => $arFile["ORIGINAL_NAME"],
		"element_size" => $arFile["FILE_SIZE"],
		"element_url" => $arFile["URL"],
		"element_content_type" => $arFile["CONTENT_TYPE"],
Ejemplo n.º 2
0
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED !== true) {
    die;
}
if (!function_exists("__MPF_ImageResizeHandler")) {
    function __MPF_ImageResizeHandler(&$arCustomFile)
    {
        $arResizeParams = array("width" => 400, "height" => 400);
        if (!is_array($arCustomFile) || !isset($arCustomFile['fileID'])) {
            return false;
        }
        $fileID = $arCustomFile['fileID'];
        $arFile = CFile::MakeFileArray($fileID);
        if (CFile::CheckImageFile($arFile) === null) {
            $aImgThumb = CFile::ResizeImageGet($fileID, array("width" => 90, "height" => 90), BX_RESIZE_IMAGE_EXACT, true);
            $arCustomFile['img_thumb_src'] = $aImgThumb['src'];
            if (!empty($arResizeParams)) {
                $aImgSource = CFile::ResizeImageGet($fileID, array("width" => $arResizeParams["width"], "height" => $arResizeParams["height"]), BX_RESIZE_IMAGE_PROPORTIONAL, true);
                $arCustomFile['img_source_src'] = $aImgSource['src'];
                $arCustomFile['img_source_width'] = $aImgSource['width'];
                $arCustomFile['img_source_height'] = $aImgSource['height'];
            }
        }
    }
}
if (!empty($arParams["UPLOAD_FILE_PARAMS"])) {
    $bNull = null;
    __MPF_ImageResizeHandler($bNull, $arParams["UPLOAD_FILE_PARAMS"]);
}
if ($_SERVER['REQUEST_METHOD'] == 'POST' && isset($_REQUEST['mfi_mode']) && $_REQUEST['mfi_mode'] == "upload") {
    AddEventHandler('main', "main.file.input.upload", '__MPF_ImageResizeHandler');
}
Ejemplo n.º 3
0
            $fileIdForDelete = 0;
            $arFields = array();
            foreach (array("MELODY_WELCOME", "MELODY_WAIT", "MELODY_HOLD", "MELODY_VOICEMAIL") as $controlID => $inputName) {
                if ($_REQUEST["controlID"] == "voximplant" . $controlID) {
                    $fileIdForDelete = $arResult["ITEM"][$inputName];
                    $arFields = array($inputName => $arCustomFile["fileID"]);
                    break;
                }
            }
            if (!empty($arFields)) {
                $arFile = CFile::GetFileArray($arCustomFile['fileID']);
                $arCustomFile["fileURL"] = CHTTP::URN2URI($arFile["SRC"]);
                Bitrix\Voximplant\ConfigTable::update($arParams["ID"], $arFields);
                CFile::Delete($fileIdForDelete);
            }
        }
        __MPF_ImageResizeHandler($res = null, $arParams);
        AddEventHandler('main', "main.file.input.upload", '__MPF_ImageResizeHandler');
    } elseif ($_POST['mfi_mode'] == 'delete' && $_POST["fileID"] > 0) {
        $arFields = array();
        foreach (array("MELODY_WELCOME", "MELODY_WAIT", "MELODY_HOLD", "MELODY_VOICEMAIL") as $controlID => $inputName) {
            if ($_REQUEST["controlID"] == "voximplant" . $controlID && $arResult["ITEM"][$inputName] == $_POST["fileID"]) {
                $arFields = array($inputName => 0);
                break;
            }
        }
        if (!empty($arFields)) {
            Bitrix\Voximplant\ConfigTable::update($arParams["ID"], $arFields);
        }
    }
}