diff --git a/addons/default/visiosoft/advs-module/migrations/2021_01_06_110331_visiosoft.module.advs__add_doc-files_field.php b/addons/default/visiosoft/advs-module/migrations/2021_01_06_110331_visiosoft.module.advs__add_doc-files_field.php
new file mode 100644
index 000000000..72343feed
--- /dev/null
+++ b/addons/default/visiosoft/advs-module/migrations/2021_01_06_110331_visiosoft.module.advs__add_doc-files_field.php
@@ -0,0 +1,26 @@
+ 'advs',
+ ];
+
+ protected $fields = [
+ 'doc_files' => [
+ 'type' => 'visiosoft.field_type.media',
+ 'config' => [
+ 'folders' => ["ads_documents"],
+ 'mode' => 'upload',
+ ],
+ ],
+ ];
+
+ protected $assignments = [
+ 'doc_files'
+ ];
+}
diff --git a/addons/default/visiosoft/advs-module/resources/lang/en/field.php b/addons/default/visiosoft/advs-module/resources/lang/en/field.php
index cb6b0ae4b..4f8860df0 100644
--- a/addons/default/visiosoft/advs-module/resources/lang/en/field.php
+++ b/addons/default/visiosoft/advs-module/resources/lang/en/field.php
@@ -319,6 +319,7 @@ return [
'congratulations' => 'Congratulations',
'ad_desc' => 'Ad Description',
'upload_photos' => 'Upload Photos',
+ 'upload_files' => 'Upload Files',
'additional_fields' => 'Additional Fields',
'ad_location' => 'Ad Location',
diff --git a/addons/default/visiosoft/advs-module/resources/views/ad-detail/detail.twig b/addons/default/visiosoft/advs-module/resources/views/ad-detail/detail.twig
index 3c1678bf9..f7335e0c4 100644
--- a/addons/default/visiosoft/advs-module/resources/views/ad-detail/detail.twig
+++ b/addons/default/visiosoft/advs-module/resources/views/ad-detail/detail.twig
@@ -36,6 +36,12 @@
+
+
{% if setting_value('visiosoft.theme.base::ad_details_tab') %}
{% if blocks('ad-item-content-block-area') is null %}
diff --git a/addons/default/visiosoft/advs-module/resources/views/new-ad/new-create.twig b/addons/default/visiosoft/advs-module/resources/views/new-ad/new-create.twig
index 2b71af7c6..51b205a21 100644
--- a/addons/default/visiosoft/advs-module/resources/views/new-ad/new-create.twig
+++ b/addons/default/visiosoft/advs-module/resources/views/new-ad/new-create.twig
@@ -178,6 +178,7 @@
diff --git a/addons/default/visiosoft/advs-module/src/Adv/Form/AdvFormBuilder.php b/addons/default/visiosoft/advs-module/src/Adv/Form/AdvFormBuilder.php
index 02b855771..ef1e7e90e 100644
--- a/addons/default/visiosoft/advs-module/src/Adv/Form/AdvFormBuilder.php
+++ b/addons/default/visiosoft/advs-module/src/Adv/Form/AdvFormBuilder.php
@@ -53,7 +53,8 @@ class AdvFormBuilder extends FormBuilder
'class' => 'hidden d-none mapVal'
],
'files',
- 'popular_adv',
+ 'doc_files',
+ 'popular_adv',
'adv_day',
'product_options_value'
];
diff --git a/addons/default/visiosoft/advs-module/src/Http/Controller/advsController.php b/addons/default/visiosoft/advs-module/src/Http/Controller/advsController.php
index 89fad88d1..e7100af2a 100644
--- a/addons/default/visiosoft/advs-module/src/Http/Controller/advsController.php
+++ b/addons/default/visiosoft/advs-module/src/Http/Controller/advsController.php
@@ -1,5 +1,6 @@
uploader->upload($this->request->file('upload'), $this->folders->find($this->request->get('folder')));
+ $doc_folder = app(FolderRepositoryInterface::class)->findBySlug('ads_documents')->id;
+ $mimes = explode('/', $this->request->file('upload')->getMimeType());
+
+ if ($mimes[0] == 'image'){
+ $file = $this->uploader->upload($this->request->file('upload'), $this->folders->find($this->request->get('folder')));
+ } else {
+ $file = $this->uploader->upload($this->request->file('upload'), $this->folders->find($doc_folder));
+ }
+
if ($file) {
+ if ($mimes[0] == 'image'){
- $settings_key = [
- 'image_resize_backend',
- 'full_image_width',
- 'full_image_height',
- 'medium_image_width',
- 'medium_image_height',
- 'thumbnail_width',
- 'thumbnail_height',
- 'add_canvas',
- 'image_canvas_width',
- 'image_canvas_height',
- 'watermark_type',
- 'watermark_text',
- 'watermark_image',
- 'watermark_position'
- ];
+ $settings_key = [
+ 'image_resize_backend',
+ 'full_image_width',
+ 'full_image_height',
+ 'medium_image_width',
+ 'medium_image_height',
+ 'thumbnail_width',
+ 'thumbnail_height',
+ 'add_canvas',
+ 'image_canvas_width',
+ 'image_canvas_height',
+ 'watermark_type',
+ 'watermark_text',
+ 'watermark_image',
+ 'watermark_position'
+ ];
- $settings_value = array();
+ $settings_value = array();
- foreach ($settings_key as $key) {
- $settings_value[$key] = setting_value('visiosoft.module.advs::' . $key);
- }
+ foreach ($settings_key as $key) {
+ $settings_value[$key] = setting_value('visiosoft.module.advs::' . $key);
+ }
- $fullImg = WaterMark::make($this->request->file('upload')->getRealPath());
+ $fullImg = WaterMark::make($this->request->file('upload')->getRealPath());
- if ($settings_value['image_resize_backend']) {
- $fullImg = $fullImg->resize(null, $settings_value['full_image_height'],
- function ($constraint) {
- $constraint->aspectRatio();
- });
- }
+ if ($settings_value['image_resize_backend']) {
+ $fullImg = $fullImg->resize(null, $settings_value['full_image_height'],
+ function ($constraint) {
+ $constraint->aspectRatio();
+ });
+ }
- $mdImg = WaterMark::make($this->request->file('upload')->getRealPath())
- ->resize(null, $settings_value['medium_image_height'], function ($constraint) {
- $constraint->aspectRatio();
- });
+ $mdImg = WaterMark::make($this->request->file('upload')->getRealPath())
+ ->resize(null, $settings_value['medium_image_height'], function ($constraint) {
+ $constraint->aspectRatio();
+ });
- if ($settings_value['add_canvas']) {
+ if ($settings_value['add_canvas']) {
- $fullImg->resizeCanvas(
- $settings_value['image_canvas_width'], $settings_value['image_canvas_height'],
- 'center', false, 'fff'
- );
+ $fullImg->resizeCanvas(
+ $settings_value['image_canvas_width'], $settings_value['image_canvas_height'],
+ 'center', false, 'fff'
+ );
- $mdImg->resizeCanvas(
- $settings_value['medium_image_width'], $settings_value['medium_image_height'],
- 'center', false, 'fff'
- );
- }
+ $mdImg->resizeCanvas(
+ $settings_value['medium_image_width'], $settings_value['medium_image_height'],
+ 'center', false, 'fff'
+ );
+ }
- $image_types = array('full' => $fullImg, 'medium' => $mdImg);
+ $image_types = array('full' => $fullImg, 'medium' => $mdImg);
- foreach ($image_types as $key => $image) {
+ foreach ($image_types as $key => $image) {
- if ($settings_value['watermark_type'] == 'image') {
+ if ($settings_value['watermark_type'] == 'image') {
- if ($watermarkimage = $this->files->find($settings_value['watermark_image'])) {
- $watermark = WaterMark::make(app_storage_path() . '/files-module/local/' . $watermarkimage->path());
- $image->insert($watermark, $settings_value['watermark_position']);
- }
+ if ($watermarkimage = $this->files->find($settings_value['watermark_image'])) {
+ $watermark = WaterMark::make(app_storage_path() . '/files-module/local/' . $watermarkimage->path());
+ $image->insert($watermark, $settings_value['watermark_position']);
+ }
- } else {
- $v = "top";
- $h = "center";
- $w = $image->width() / 2;
- $h1 = $image->height() / 2;
- $font_size = $w / 20;
- $image->text($settings_value['watermark_text'], $w, $h1, function ($font) use ($v, $h, $font_size) {
- $font->file(public_path('Antonio-Bold.ttf'));
- $font->size($font_size);
- $font->align($h);
- $font->valign($v);
- });
- }
- if ($key === "full") {
- $fileName = $file->getAttributes()['name'];
- } else {
- $fileName = 'md-' . $file->getAttributes()['name'];
+ } else {
+ $v = "top";
+ $h = "center";
+ $w = $image->width() / 2;
+ $h1 = $image->height() / 2;
+ $font_size = $w / 20;
+ $image->text($settings_value['watermark_text'], $w, $h1, function ($font) use ($v, $h, $font_size) {
+ $font->file(public_path('Antonio-Bold.ttf'));
+ $font->size($font_size);
+ $font->align($h);
+ $font->valign($v);
+ });
+ }
+ if ($key === "full") {
+ $fileName = $file->getAttributes()['name'];
+ } else {
+ $fileName = 'md-' . $file->getAttributes()['name'];
- $this->createFile($this->request->get('folder'),$fileName,$image);
- }
- $image->save(app_storage_path() . '/files-module/local/images/' . $fileName);
- }
+ $this->createFile($this->request->get('folder'),$fileName,$image);
+ }
+ $image->save(app_storage_path() . '/files-module/local/images/' . $fileName);
+ }
+ }
return $this->response->json($file->getAttributes());
}
@@ -173,15 +183,15 @@ class UploadController extends AdminController
return response()->json(['status' => 'error']);
}
- public function createFile($folder, $filename, $image)
- {
- $this->files->create([
- 'folder_id' => $folder,
- 'name' => $filename,
- 'disk_id' => 1,
- 'size' => $image->filesize(),
- 'mime_type' => $image->mime,
- 'extension' => $image->extension,
- ]);
- }
+ public function createFile($folder, $filename, $image = null)
+ {
+ $this->files->create([
+ 'folder_id' => $folder,
+ 'name' => $filename,
+ 'disk_id' => 1,
+ 'size' => $image->filesize(),
+ 'mime_type' => $image->mime,
+ 'extension' => $image->extension,
+ ]);
+ }
}
diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php
index f9a9d30db..680ca7d31 100644
--- a/database/seeds/DatabaseSeeder.php
+++ b/database/seeds/DatabaseSeeder.php
@@ -174,5 +174,23 @@ class DatabaseSeeder extends Seeder
],
]);
};
+
+
+ //Create Ads Documents Folder
+ if (!$this->folders->findBySlug('ads_documents')) {
+ $disk = $this->disks->findBySlug('local');
+
+ $this->folders->create([
+ 'en' => [
+ 'name' => 'Ads Documents',
+ 'description' => 'A folder for Ads Documents.',
+ ],
+ 'slug' => 'ads_documents',
+ 'disk' => $disk,
+ 'allowed_types' => [
+ 'pdf', 'doc', 'docx', 'xls', 'xlsx',
+ ],
+ ]);
+ };
}
}