/** * Загружает изображение на диск * * При необходимости производит наложение водяного знака и создание уменьшенной копии * * @param UploadedFile $file * @param $options * @return bool|string */ public function uploadImage(UploadedFile $file) { /** @var $file \yii\web\UploadedFile */ $basePath = Yii::getAlias($this->_baseUploadPathAlias); $resultFileName = GlobalHelper::normalizeName($file->name, true); $resultFilePath = $basePath . $this->folder . '/' . $resultFileName; $thumbImagePath = $basePath . $this->folder . '/thumbs/' . $resultFileName; $watermarkImagePath = $basePath . $this->_watermarkFileName; // Проверяем существование и права доступа папки для загрузки if ($this->checkFolder($basePath . $this->folder, true)) { // Если файл получается сохранить if ($file->saveAs($resultFilePath)) { // Если отмечена галочка "Создавать уменьшенную копию" if ($this->create_thumb) { if ($this->createThumb($resultFilePath, $thumbImagePath)) { $this->_result[] = 'Уменьшенная копия изображения создана'; } } // Если отмечена галочка "Добавлять водяной знак" if ($this->watermark) { if ($this->putWatermark($resultFilePath, $watermarkImagePath)) { $this->_result[] = 'Водяной знак наложен'; } } return $resultFileName; } } return false; }