From b96ec7d8c02deb36652c3d784b506adf063e816e Mon Sep 17 00:00:00 2001 From: Diatrex Date: Wed, 26 Aug 2020 15:32:42 +0300 Subject: [PATCH] #2011 openclassify field type background change --- .../resources/config/settings/sections.php | 1 + .../resources/config/settings/settings.php | 7 +++++ .../advs-module/resources/lang/en/setting.php | 3 +++ .../advs-module/src/Adv/AdvRepository.php | 15 ++++++++--- .../src/Http/Controller/UploadController.php | 26 ++++++++++--------- 5 files changed, 37 insertions(+), 15 deletions(-) diff --git a/addons/default/visiosoft/advs-module/resources/config/settings/sections.php b/addons/default/visiosoft/advs-module/resources/config/settings/sections.php index 50d32db0f..35e671821 100644 --- a/addons/default/visiosoft/advs-module/resources/config/settings/sections.php +++ b/addons/default/visiosoft/advs-module/resources/config/settings/sections.php @@ -25,6 +25,7 @@ return [ 'estimated_pending_time', 'default_published_time', 'default_GET', + 'add_canvas', 'thumbnail_width', 'thumbnail_height', 'picture_width', diff --git a/addons/default/visiosoft/advs-module/resources/config/settings/settings.php b/addons/default/visiosoft/advs-module/resources/config/settings/settings.php index 8a69b1286..0125a4a09 100644 --- a/addons/default/visiosoft/advs-module/resources/config/settings/settings.php +++ b/addons/default/visiosoft/advs-module/resources/config/settings/settings.php @@ -108,6 +108,13 @@ return [ 'default_value' => 270, ], ], + 'add_canvas' => [ + 'type' => 'anomaly.field_type.boolean', + 'config' => [ + 'default_value' => true, + 'mode' => 'checkbox', + ], + ], 'thumbnail_height' => [ 'type' => 'anomaly.field_type.integer', 'config' => [ diff --git a/addons/default/visiosoft/advs-module/resources/lang/en/setting.php b/addons/default/visiosoft/advs-module/resources/lang/en/setting.php index 026e78216..643e19f0a 100644 --- a/addons/default/visiosoft/advs-module/resources/lang/en/setting.php +++ b/addons/default/visiosoft/advs-module/resources/lang/en/setting.php @@ -79,6 +79,9 @@ return [ 'default_GET' => [ 'name' => 'Default Ad GET', ], + 'add_canvas' => [ + 'name' => 'Add Canvas', + ], 'thumbnail_width' => [ 'name' => 'Thumbnail Width', ], diff --git a/addons/default/visiosoft/advs-module/src/Adv/AdvRepository.php b/addons/default/visiosoft/advs-module/src/Adv/AdvRepository.php index a370ce3e3..90843381b 100644 --- a/addons/default/visiosoft/advs-module/src/Adv/AdvRepository.php +++ b/addons/default/visiosoft/advs-module/src/Adv/AdvRepository.php @@ -316,9 +316,18 @@ class AdvRepository extends EntryRepository implements AdvRepositoryInterface // Create thumbnail image $image = Image::make(file_get_contents($adv->files[0]->url())); $image->resize( - setting_value('visiosoft.module.advs::thumbnail_width'), - setting_value('visiosoft.module.advs::thumbnail_height') - ); + null, + setting_value('visiosoft.module.advs::thumbnail_height'), + function ($constraint) { + $constraint->aspectRatio(); + }); + if (setting_value('visiosoft.module.advs::add_canvas')) { + $image->resizeCanvas( + setting_value('visiosoft.module.advs::thumbnail_width'), + setting_value('visiosoft.module.advs::thumbnail_height'), + 'center', false, 'fff' + ); + } $fileName = 'tn-' . $adv->files[0]->name; $image->save(app_storage_path() . '/files-module/local/images/' . $fileName); diff --git a/addons/default/visiosoft/media-field_type/src/Http/Controller/UploadController.php b/addons/default/visiosoft/media-field_type/src/Http/Controller/UploadController.php index fb95602b8..bae2b9d24 100644 --- a/addons/default/visiosoft/media-field_type/src/Http/Controller/UploadController.php +++ b/addons/default/visiosoft/media-field_type/src/Http/Controller/UploadController.php @@ -62,21 +62,23 @@ class UploadController extends AdminController $fullImg = WaterMark::make($this->request->file('upload')->getRealPath()) ->resize(null, setting_value('visiosoft.field_type.media::imageResizeH', 600),function ($constraint) { $constraint->aspectRatio(); - }) - ->resizeCanvas( - setting_value('visiosoft.field_type.media::imageCanvasW', 800), - setting_value('visiosoft.field_type.media::imageCanvasH', 600), - 'center', false, 'fff' - ); + }); $mdImg = WaterMark::make($this->request->file('upload')->getRealPath()) ->resize(null, setting_value('visiosoft.module.advs::picture_height'),function ($constraint) { $constraint->aspectRatio(); - }) - ->resizeCanvas( - setting_value('visiosoft.module.advs::picture_width', 400), - setting_value('visiosoft.module.advs::picture_height', 300), - 'center', false, 'fff' - ); + }); + if (setting_value('visiosoft.module.advs::add_canvas')) { + $fullImg->resizeCanvas( + setting_value('visiosoft.field_type.media::imageCanvasW', 800), + setting_value('visiosoft.field_type.media::imageCanvasH', 600), + 'center', false, 'fff' + ); + $mdImg->resizeCanvas( + setting_value('visiosoft.module.advs::picture_width', 400), + setting_value('visiosoft.module.advs::picture_height', 300), + 'center', false, 'fff' + ); + } foreach ([$fullImg, $mdImg] as $index => $image) { if ($watermarktype == 'image') { $watermarkimage_id = $settings->value('visiosoft.module.advs::watermark_image');