예제 #1
0
 public static function SaveAllUploadedFiles($uploadedFiles)
 {
     try {
         $packageFields = $uploadedFiles[0]->getPackage()->getPackageFields();
         // We call 'onBeforeUpload' only once and if exists handler
         if (isset(self::$uploadCallbackParams['onBeforeUpload']) && self::$PackageGuid != $packageFields['PackageGuid']) {
             self::$PackageGuid = $packageFields['PackageGuid'];
             self::$uploadCallbackParams['packageFields'] = $packageFields;
             if (!call_user_func(self::$uploadCallbackParams['onBeforeUpload'], self::$uploadCallbackParams)) {
                 return;
             }
         }
         foreach ($uploadedFiles as $uploadedFile) {
             try {
                 $convertedFiles = $uploadedFile->getConvertedFiles();
                 if (count($convertedFiles) <= 0) {
                     CImageUploader::SaveError(array(array("id" => "BXUPL_FLASH_TYPE_1", "text" => GetMessage('P_BXUPL_FLASH_TYPE_1'))));
                     continue;
                 }
                 $arFiles = array();
                 foreach ($convertedFiles as $j => $convertedFile) {
                     $path = self::$sTmpPath . "_" . $j . ".tmp";
                     $convertedFile->moveTo($path);
                     $arFiles[] = array('name' => $convertedFile->getName(), 'tmp_name' => $path, 'errors' => 0, 'type' => self::GetMimeType($convertedFile->getName()), 'size' => $convertedFile->getSize(), 'mode' => $convertedFile->getMode(), 'height' => $convertedFile->getHeight(), 'width' => $convertedFile->getWidth(), 'path' => $path);
                 }
                 $name = $packageFields['Title_' . $uploadedFile->getIndex()];
                 $fileName = $uploadedFile->getSourceName();
                 if ($name == "") {
                     $name = $fileName;
                 }
                 $Info = array('name' => $name, 'filename' => $fileName, 'description' => $uploadedFile->getDescription(), 'tags' => $uploadedFile->getTag());
                 call_user_func(self::$uploadCallbackFunc, $Info, $arFiles, self::$uploadCallbackParams);
             } catch (Exception $e) {
                 CImageUploader::SaveError(array(array("id" => "BXUPL_FLASH_SAVE_1", "text" => $e->getMessage)));
             }
         }
         if (isset(self::$uploadCallbackParams['onAfterUpload'])) {
             call_user_func(self::$uploadCallbackParams['onAfterUpload'], self::$uploadCallbackParams);
         }
     } catch (Exception $e) {
         CImageUploader::SaveError(array(array("id" => "BXUPL_FLASH_SAVE_2", "text" => $e->getMessage)));
     }
 }
예제 #2
0
	</div>
</div>
<?php 
/* ************** Select uploader type ************** */
if ($arParams['UPLOADER_TYPE'] == 'applet' && $arParams["VIEW_MODE"] == "applet") {
    /* Show Image Uploader */
    CImageUploader::ShowScript(array('id' => $arParams['UPLOADER_ID'], 'layout' => $arParams['APPLET_LAYOUT'] == 'simple' ? 'OnePane' : 'ThreePanes', 'folderViewMode' => 'Thumbnails', 'uploadViewMode' => 'Tiles', 'height' => $arParams["UPLOADER_HEIGHT"] . 'px', 'folderPaneHeight' => round($arParams["UPLOADER_HEIGHT"] / 2), 'enableCrop' => true, 'cropRatio' => '0.75', 'cropMinSize' => '150', 'fileMask' => '*.jpg;*.jpeg;*.png;*.gif;*.bmp', 'actionUrl' => $arParams["ACTION_URL"], 'redirectUrl' => $arParams["REDIRECT_URL"], 'appendFormName' => $arParams["UPLOADER_ID"] . '_form', 'showAddFileButton' => $arParams['APPLET_LAYOUT'] == 'simple', 'showAddFolderButton' => $arParams['APPLET_LAYOUT'] == 'simple', 'filesPerPackage' => 2, 'converters' => $arParams['converters'], 'maxFileSize' => $arResult["UPLOAD_MAX_FILE_SIZE"], 'pathToTmp' => $arParams["PATH_TO_TMP"], 'useWatermark' => true, 'watermarkConfig' => array('values' => array('use' => $arWatermark['use'], 'type' => $arWatermark['type'], 'text' => $arWatermark['text'], 'color' => $arWatermark['color'], 'position' => $arWatermark['position'], 'size' => $arWatermark['size'], 'opacity' => $arWatermark['opacity'], 'file' => $arWatermark['file']), 'rules' => $arParams["WATERMARK_RULES"], 'type' => $arParams['WATERMARK_TYPE'], 'text' => $arParams['WATERMARK_TEXT'], 'color' => $arParams['WATERMARK_COLOR'], 'position' => $arParams['WATERMARK_POSITION'], 'size' => $arParams['WATERMARK_SIZE'], 'opacity' => $arParams['WATERMARK_TRANSPARENCY'], 'file' => $arParams['WATERMARK_FILE_REL'], 'fileWidth' => $arWatermark["fileWidth"], 'fileHeight' => $arWatermark["fileHeight"])));
    ?>

<?php 
} elseif ($arParams['UPLOADER_TYPE'] == 'flash' && $arParams["VIEW_MODE"] == "applet") {
    /*Show Flash uploader*/
    ?>

<?php 
    CFlashUploader::ShowScript(array('id' => $arParams['UPLOADER_ID'], 'height' => $arParams["UPLOADER_HEIGHT"] . 'px', 'fileMask' => "[['*.jpg; *.jpeg; *.png; *.gif; *.bmp', '*.jpg;*.jpeg;*.png;*.gif;*.bmp'], ['*.*','*.*']]", 'actionUrl' => $arParams["ACTION_URL"], 'redirectUrl' => $arParams["REDIRECT_URL"], 'appendFormName' => $arParams["UPLOADER_ID"] . '_form', 'converters' => $arParams['converters'], 'maxFileSize' => $arResult["UPLOAD_MAX_FILE_SIZE"], 'pathToTmp' => $arParams["PATH_TO_TMP"]));
    ?>

<?php 
} else {
    /* Simple uploader in form*/
    ?>
<div id="bxiu_simple_cont<?php 
    echo $arParams['UPLOADER_ID'];
    ?>
" class="bxiu-simple-cont">
	<div class="bxiu-field-upload">
		<input type="button" value="<?php 
    echo GetMessage("AddFiles");
    ?>
" class="bxiu-add-files-but"/>
예제 #3
0
    }
}
$arParams['converters'] = $arConverters;
$res = new CPhotoUploader($arParams, $arResult);
$params = array("copies" => array_diff_key($arParams['converters'], array("real_picture" => true)), "allowUpload" => "I", "uploadFileWidth" => $arParams["ORIGINAL_SIZE"], "uploadFileHeight" => $arParams["ORIGINAL_SIZE"], "uploadMaxFilesize" => $arParams["UPLOAD_MAX_FILE_SIZE"], "events" => array("onUploadIsStarted" => array($res, "onBeforeUpload"), "onUploadIsContinued" => array($res, "onBeforeUpload"), "onPackageIsFinished" => array($res, "onAfterUpload"), "onFileIsUploaded" => array($res, "handleFile")));
$arParams["bxu"] = class_exists("CFileUploader") ? new CFileUploader($params, "get") : false;
/********************************************************************
				/Default params
********************************************************************/
/********************************************************************
				Action
********************************************************************/
if ($_REQUEST["save_upload"] == "Y" && $_REQUEST["uploader_redirect"] != "Y" && $_SERVER['REQUEST_METHOD'] == "POST" && !empty($_POST) || isset($_POST["PackageGuid"])) {
    if (!(is_object($arParams["bxu"]) && $arParams["bxu"]->checkPost()) && $arParams["UPLOADER_TYPE"] == 'flash' && $arParams["VIEW_MODE"] == 'applet') {
        CUtil::JSPostUnEscape();
        CFlashUploader::UploadFileHandler("handleFile", array('convCount' => count($arConverters), 'pathToTmp' => $arParams["PATH_TO_TMP"], 'onBeforeUpload' => 'onBeforeUpload', 'onAfterUpload' => 'onAfterUpload', 'arParams' => $arParams, '~arResult' => array("SECTION" => $arResult["SECTION"], "URL" => $arResult["URL"], "GALLERY" => $arResult["GALLERY"]), 'sessid' => bitrix_sessid()));
    } elseif ($arParams["UPLOADER_TYPE"] == 'applet' && $arParams["VIEW_MODE"] == 'applet') {
        CUtil::JSPostUnEscape();
        CImageUploader::UploadFileHandler('handleFile', array('convCount' => count($arConverters), 'pathToTmp' => $arParams["PATH_TO_TMP"], 'onBeforeUpload' => 'onBeforeUpload', 'onAfterUpload' => 'onAfterUpload', 'arParams' => $arParams, '~arResult' => array("SECTION" => $arResult["SECTION"], "URL" => $arResult["URL"], "GALLERY" => $arResult["GALLERY"]), 'sessid' => bitrix_sessid()));
    } else {
        //RestartBuffer and DIE inside!
        simpleUploadHandler($arParams, array("SECTION" => $arResult["SECTION"], "URL" => $arResult["URL"], "GALLERY" => $arResult["GALLERY"]));
    }
    return;
}
/********************************************************************
				/Action
********************************************************************/
/********************************************************************
				Data
********************************************************************/
예제 #4
0
    ?>
"><?php 
    echo GetMessage("P_SHOW_FORM");
    ?>
</a>
		</div><?php 
    echo $htmlSettings;
    ?>
	</div>
</div>
</form>
<?php 
    if ($arParams["UPLOADER_TYPE"] == "applet") {
        CImageUploader::ShowScript(array("id" => $arParams["UPLOADER_ID"], "layout" => $arParams["APPLET_LAYOUT"] == "simple" ? "OnePane" : "ThreePanes", "folderViewMode" => "Thumbnails", "uploadViewMode" => "Tiles", "height" => $arParams["UPLOADER_HEIGHT"] . "px", "folderPaneHeight" => round($arParams["UPLOADER_HEIGHT"] / 2), "thumbnailJpegQuality" => $arParams["JPEG_QUALITY"], "enableCrop" => true, "cropRatio" => "0.75", "cropMinSize" => "150", "fileMask" => "*.jpg;*.jpeg;*.png;*.gif;*.bmp", "actionUrl" => $arParams["ACTION_URL"], "redirectUrl" => $arParams["REDIRECT_URL"], "appendFormName" => $arParams["UPLOADER_ID"] . "_form", "showAddFileButton" => $arParams["APPLET_LAYOUT"] == "simple", "showAddFolderButton" => $arParams["APPLET_LAYOUT"] == "simple", "filesPerPackage" => 2, "converters" => $arParams["converters"], "maxFileSize" => $arResult["UPLOAD_MAX_FILE_SIZE"], "pathToTmp" => $arParams["PATH_TO_TMP"], "useWatermark" => true, "watermarkConfig" => array("values" => array("use" => $arWatermark["use"], "type" => $arWatermark["type"], "text" => $arWatermark["text"], "color" => $arWatermark["color"], "position" => $arWatermark["position"], "size" => $arWatermark["size"], "opacity" => $arWatermark["opacity"], "file" => $arWatermark["file"]), "rules" => $arParams["WATERMARK_RULES"], "type" => $arParams["WATERMARK_TYPE"], "text" => $arParams["WATERMARK_TEXT"], "color" => $arParams["WATERMARK_COLOR"], "position" => $arParams["WATERMARK_POSITION"], "size" => $arParams["WATERMARK_SIZE"], "opacity" => $arParams["WATERMARK_TRANSPARENCY"], "file" => $arParams["WATERMARK_FILE_REL"], "fileWidth" => $arWatermark["fileWidth"], "fileHeight" => $arWatermark["fileHeight"])));
    } else {
        CFlashUploader::ShowScript(array("id" => $arParams["UPLOADER_ID"], "height" => $arParams["UPLOADER_HEIGHT"] . "px", "fileMask" => "[['*.jpg; *.jpeg; *.png; *.gif; *.bmp', '*.jpg;*.jpeg;*.png;*.gif;*.bmp'], ['*.*','*.*']]", "actionUrl" => $arParams["ACTION_URL"], "redirectUrl" => $arParams["REDIRECT_URL"], "appendFormName" => $arParams["UPLOADER_ID"] . "_form", "converters" => $arParams["converters"], "maxFileSize" => $arResult["UPLOAD_MAX_FILE_SIZE"], "pathToTmp" => $arParams["PATH_TO_TMP"], "thumbnailJpegQuality" => $arParams["JPEG_QUALITY"]));
    }
}
if ($arParams["ORIGINAL_SIZE"] || $arResult["UPLOAD_MAX_FILE_SIZE_MB"] && $arParams["ALLOW_UPLOAD_BIG_FILES"] != "Y" || $arParams["MODERATION"] == "Y") {
    ?>
<div class="bxiu-notice <?php 
    echo $arParams["VIEW_MODE"] == "applet" ? "bxiu-notice-applet" : "bxiu-notice-form";
    ?>
">
<?php 
    if ($arParams["MODERATION"] == "Y") {
        ?>
	<p><?php 
        echo GetMessage("P_MODERATION_NITICE");
        ?>
</p>