Задача: доработать хак так, чтобы он при ресайзе изображений, если для этой картинки нет набора пресетов — не трогал ее.
Готов обсудить ТЗ и оплату в личке или в icq
Оригинал файла uploader.php
<?php class cmsUploader { public function __construct(){ } //============================================================================// //============================================================================// /** * Возвращает строку с максимальный размером загружаемых файлов, * установленным в php.ini * @return string */ public function getMaxUploadSize(){ return $max_size; } public function isUploaded($name){ if (!$_FILES[$name]['size']) { return false; } return true; } public function isUploadedXHR($name){ } //============================================================================// //============================================================================// public function resizeImage($source_file, $size){ $cfg = cmsConfig::getInstance(); $user = cmsUser::getInstance(); $dest_dir = $this->getUploadDestinationDirectory(); $dest_ext = $dest_info['extension']; $dest_file = $dest_dir . '/' . $dest_file; $user->increaseFilesCount(); if ($this->imageCopyResized($source_file, $dest_file, $size['width'], $size['height'], $size['square'])) { return $url; } return false; } //============================================================================// //============================================================================// /** * Загружает файл на сервер * @param string $post_filename Название поля с файлом в массиве $_FILES * @param string $allowed_ext Список допустимых расширений (через запятую) * @param string $allowed_size Максимальный размер файла (в байтах) * @param string $destination Папка назначения (внутри пути upload) * @return array */ public function upload($post_filename, $allowed_ext = false, $allowed_size = 0, $destination = false){ if ($this->isUploadedXHR($post_filename)){ return $this->uploadXHR($post_filename, $allowed_ext, $allowed_size, $destination); } if ($this->isUploaded($post_filename)){ return $this->uploadForm($post_filename, $allowed_ext, $allowed_size, $destination); } 'success' => false, 'error' => LANG_UPLOAD_ERR_NO_FILE ); } //============================================================================// //============================================================================// /** * Загружает файл на сервер переданный через input типа file * @param string $post_filename Название поля с файлом в массиве $_FILES * @param string $allowed_ext Список допустимых расширений (через запятую) * @param string $allowed_size Максимальный размер файла (в байтах) * @param string $destination Папка назначения (внутри пути upload) * @return array */ public function uploadForm($post_filename, $allowed_ext = false, $allowed_size = 0, $destination = false){ $config = cmsConfig::getInstance(); $user = cmsUser::getInstance(); $source = $_FILES[$post_filename]['tmp_name']; $error_code = $_FILES[$post_filename]['error']; $dest_size = $_FILES[$post_filename]['size']; if ($allowed_ext !== false){ 'error' => LANG_UPLOAD_ERR_MIME, 'success' => false, 'name' => $dest_name ); } } if ($allowed_size){ if ($dest_size > $allowed_size){ 'success' => false, 'name' => $dest_name ); } } if (!$destination){ $user->increaseFilesCount(); $dest_dir = $this->getUploadDestinationDirectory(); $destination = $dest_dir . '/' . $dest_file; } else { $destination = $config->upload_path . $destination . '/' . $dest_name; } return $this->moveUploadedFile($source, $destination, $error_code, $dest_name, $dest_size); } //============================================================================// //============================================================================// /** * Загружает файл на сервер переданный через XHR * @param string $post_filename Название поля с файлом в массиве $_GET * @param string $allowed_ext Список допустимых расширений (через запятую) * @param string $allowed_size Максимальный размер файла (в байтах) * @param string $destination Папка назначения (внутри пути upload) * @return array */Прикрепленный файл_6nmqf.doc 26 Кб
#2
24 сентября 2015 в 00:57
Проблема решена! Kreator помог! Спасибо ему большое!