示例#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();
                 $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_APPLET_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_APPLET_SAVE_2", "text" => $e->getMessage)));
     }
 }