} elseif (empty($_FILES[$inputName]['type']) || !empty($_POST['acceptMimeTypes']) && is_array($_POST['acceptMimeTypes']) && !in_array($_FILES[$inputName]['type'], $_POST['acceptMimeTypes'])) { $_FILES[$inputName]['error'] = 'errFileType'; } } // присваиваем файлу уникальное имя $fileName = 'uploads/temporary/' . $_POST['UPLOAD_IDENTIFIER'] . '.' . $_FILES[$inputName]['name']; // если: нет ошибок загрузки файла, перемещаем его в директорию назначения if (empty($_FILES[$inputName]['error'])) { // проверяем существует ли файл с таким именем в папке загрузки if (!file_exists($fileName)) { // перемещаем загруженный файл из временной папки в папку загрузки if (@move_uploaded_file($_FILES[$inputName]['tmp_name'], $fileName)) { // уничтожаем лишние данные (мусор) unset($_FILES[$inputName]['tmp_name'], $_FILES[$inputName]['type'], $_FILES[$inputName]['error']); // обработка загружаемых файлов (опционально по типам) if (!empty($_GET['fType']) && 'rPhotocard' === $_GET['fType'] && (!img::setParam($_POST['UPLOAD_IDENTIFIER'] . '.' . $_FILES[$inputName]['name'], 'uploads/temporary/') || !img::resizeImg(CONF_RESUME_ADD_PHOTO_MAXWIDTH, CONF_RESUME_ADD_PHOTO_MAXHEIGHT, $fileName))) { $_FILES[$inputName]['error'] = 'errFileType'; @unlink($fileName); } } else { $_FILES[$inputName]['error'] = 'errFileUploaded'; // уничтожаем лишние данные (мусор) unset($_FILES[$inputName]['tmp_name']); // уничтожаем временный файл @unlink($_FILES[$inputName]['tmp_name']); } } else { // уничтожаем лишние данные (мусор) unset($_FILES[$inputName]['tmp_name'], $_FILES[$inputName]['type'], $_FILES[$inputName]['error']); } } else {
break; case 'file': default: $files_dir = filesys::setPath(CONF_FILEMANAGER_PATH_TO_FILES); break; } } else { $files_dir = filesys::setPath(CONF_FILEMANAGER_PATH_TO_FILES); } // загружаем файл if ($fm->loadFile('load_file', $files_dir, $fm->arrFileTypes)) { uploads::$fileProperties['path'] = $files_dir; uploads::$fileProperties['link'] = $files_dir; // если файл - изобажение, обрабатываем его if ('image' === $_POST['type']) { if (img::setParam(uploads::$arrUploadsSubj['file_name'], uploads::$arrUploadsSubj['upload_dir'])) { if (img::createThumbnail(CONF_FILEMANAGER_THUMBNAIL_WIDTH, CONF_FILEMANAGER_THUMBNAIL_HEIGHT)) { $dbData = $fm->getFilesProperties($files_dir . 'mda/uploads.mda'); $dbData[uploads::$fileProperties['filename']] = uploads::$fileProperties; $fm->putFilesProperties($files_dir . 'mda/uploads.mda', $dbData); messages::messageChangeSaved(MESSAGE_FILE_LOAD_SUCCESS, false, CONF_ADMIN_FILE . '?m=manager&s=file'); } else { $arrErrors[] = ERROR_FILE_NOT_LOAD; } } else { $arrErrors = img::$arrErrors; } } else { $dbData = $fm->getFilesProperties($files_dir . 'mda/uploads.mda'); $dbData[uploads::$fileProperties['filename']] = uploads::$fileProperties; $fm->putFilesProperties($files_dir . 'mda/uploads.mda', $dbData);
/** * protected функция загружает логотип * @param (string) $field_name - им поля из формы загрузки файла * @param (string) $upload_dir - директория, в которую загружать файл * @return string (имя картинки) or false (если ф-я вернула false, можно получить ошибки из массива $arrErrors) */ protected function loadLogo($field_name, $upload_dir) { // пробуем загрузить файл if (uploads::uploadImage($field_name, $upload_dir)) { if (img::setParam(uploads::$arrUploadsSubj['file_name'], uploads::$arrUploadsSubj['upload_dir'])) { if (img::createThumbnail(100, 100)) { return true; } else { @unlink(uploads::$arrUploadsSubj['upload_dir'] . uploads::$arrUploadsSubj['file_name']); $this->arrErrors = ERROR_FILE_CREATE_THUMBNAIL; return false; } } else { $this->arrErrors = img::$arrErrors; return false; } } else { // если загрузить файл не удалось, устанавливаем ошибки $this->arrErrors = uploads::$arrErrors; return false; } }