diff --git a/addons/default/visiosoft/advs-module/resources/css/preview.css b/addons/default/visiosoft/advs-module/resources/css/preview.css
new file mode 100644
index 000000000..b9099b3b9
--- /dev/null
+++ b/addons/default/visiosoft/advs-module/resources/css/preview.css
@@ -0,0 +1,63 @@
+.preview-wrapper {
+ border: 4px solid #999;
+}
+.preview-wrapper:before, .preview-wrapper:after {
+ content: '';
+ position: absolute;
+ left: 50%;
+ top: -30px;
+ width: 0;
+ height: 0;
+ border-style: solid;
+ border-width: 0 39px 30px 39px;
+ border-color: transparent transparent #999 transparent;
+ margin-left: -39px;
+}
+.preview-wrapper:after {
+ top: inherit;
+ bottom: -30px;
+ border-width: 30px 39px 0 39px;
+ border-color: #999 transparent transparent transparent;
+}
+.preview-overlay {
+ position: absolute;
+ top: 0;
+ bottom: 0;
+ left: 0;
+ right: 0;
+ opacity: .07;
+ background-color: #000;
+ z-index: 400;
+}
+.preview-paragraph {
+ font-size: 15px;
+ font-weight: bold;
+ text-align: center;
+}
+.preview-actions {
+ margin-top: 3em;
+ margin-bottom: 4em;
+}
+.preview-edit {
+ color: #438ed8;
+ background: #f7f7f7;
+ border: 1px solid #f7f7f7;
+}
+.preview-edit:hover {
+ background: #eaeaea;
+ border-color: #eaeaea;
+ color: #438ed8;
+}
+.preview-continue {
+ border-radius: 2px;
+ color: #fff;
+ background: #438ed8;
+}
+.preview-continue:hover {
+ background: #3c7fc1;
+ border-color: #3c7fc1;
+ color: #fff;
+}
+#compare-sidebar, .dropleft-edit {
+ display: none;
+}
\ No newline at end of file
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 771236d5a..28f352576 100644
--- a/addons/default/visiosoft/advs-module/resources/lang/en/field.php
+++ b/addons/default/visiosoft/advs-module/resources/lang/en/field.php
@@ -270,5 +270,11 @@ return [
'pending_message_3' => 'Estimated Waiting Time',
'pending_message_4' => 'The time spent in the approval process will be added to the doping time.',
'pending_message_5' => 'No transactions can be made from the call center regarding the ad in the approval process.',
- 'hours' => 'hours'
+ 'hours' => 'hours',
+
+ // Preview page
+ 'preview_text' => [
+ 'part_1' => 'If the following information about your ad is correct, click the "Continue" button and go to the next step.',
+ 'part_2' => 'If not, click the "Edit" button.',
+ ]
];
diff --git a/addons/default/visiosoft/advs-module/resources/views/new-ad/preview/partials/preview-window.twig b/addons/default/visiosoft/advs-module/resources/views/new-ad/preview/partials/preview-window.twig
new file mode 100644
index 000000000..70ca67e5d
--- /dev/null
+++ b/addons/default/visiosoft/advs-module/resources/views/new-ad/preview/partials/preview-window.twig
@@ -0,0 +1,33 @@
+{% if setting_value('visiosoft.theme.base::breadcrumbs') %}
+
+ {% include "visiosoft.module.advs::ad-detail/partials/breadcrumb" %}
+
+{% endif %}
+
+ {{ adv.title }}
+ {{ addBlock('ad-detail/title/action',{'adv_id':adv.id})|raw }}
+
+
+
+
+
+ {% include "visiosoft.module.advs::ad-detail/partials/slider" %}
+
+ {% if setting_value('visiosoft.theme.base::ad_details') %}
+ {% include "visiosoft.module.advs::ad-detail/partials/detail" %}
+ {% endif %}
+
+
+
+
+
+{% if setting_value('visiosoft.theme.base::ad_details_tab') %}
+
+ {% if blocks('ad-item-content-block-area') is null %}
+ {% include "visiosoft.module.advs::ad-detail/partials/content" %}
+ {% else %}
+ {{ blocks('ad-item-content-block-area') }}
+ {% endif %}
+
+ {{ addBlock('ad-detail/widget', {'price': adv.price, 'id': adv.id})|raw }}
+{% endif %}
\ No newline at end of file
diff --git a/addons/default/visiosoft/advs-module/resources/views/new-ad/preview/preview.twig b/addons/default/visiosoft/advs-module/resources/views/new-ad/preview/preview.twig
new file mode 100644
index 000000000..5162090ea
--- /dev/null
+++ b/addons/default/visiosoft/advs-module/resources/views/new-ad/preview/preview.twig
@@ -0,0 +1,41 @@
+{% extends "theme::layouts/default" %}
+
+{% block content %}
+
+
+ {{ trans('visiosoft.module.advs::field.preview_text.part_1') }}
+
+ {{ trans('visiosoft.module.advs::field.preview_text.part_2') }}
+
+
+
+ {% if isActiveDopings %}
+ {% set continueLink = url_route('add_doping', [adv.id]) %}
+ {% else %}
+ {% set continueLink = url_route('visiosoft.module.advs::edit_adv', [adv.id]) %}
+ {% endif %}
+
+ {{ trans('visiosoft.module.advs::field.edit') }}
+
+
+ {{ trans('visiosoft.module.advs::field.continue') }}
+
+
+
+ {% include "visiosoft.module.advs::new-ad/preview/partials/preview-window" %}
+
+
+
+
+ {{ asset_add("styles.css", "visiosoft.module.advs::css/detail.css") }}
+ {{ asset_add("styles.css", "visiosoft.module.advs::css/preview.css") }}
+
+{% endblock %}
\ No newline at end of file
diff --git a/addons/default/visiosoft/advs-module/src/AdvsModuleServiceProvider.php b/addons/default/visiosoft/advs-module/src/AdvsModuleServiceProvider.php
index 64db3eda7..1e3203257 100644
--- a/addons/default/visiosoft/advs-module/src/AdvsModuleServiceProvider.php
+++ b/addons/default/visiosoft/advs-module/src/AdvsModuleServiceProvider.php
@@ -125,6 +125,10 @@ class AdvsModuleServiceProvider extends AddonServiceProvider
'as' => 'adv_detail_seo',
'uses' => 'Visiosoft\AdvsModule\Http\Controller\advsController@view'
],
+ 'advs/preview/{id}' => [
+ 'as' => 'advs_preview',
+ 'uses' => 'Visiosoft\AdvsModule\Http\Controller\advsController@preview'
+ ],
'advs/map?country={country}&city[]={city}&district={districts}' => [
'as' => 'visiosoft.module.advs::show_ad_map_location',
'uses' => 'Visiosoft\AdvsModule\Http\Controller\advsController@map'
@@ -151,7 +155,10 @@ class AdvsModuleServiceProvider extends AddonServiceProvider
],
'advs/my_advs' => 'Visiosoft\AdvsModule\Http\Controller\advsController@myAdvs',
'advs/my_advs/{params}' => 'Visiosoft\AdvsModule\Http\Controller\advsController@myAdvs',
- 'advs/edit_advs/{id}' => 'Visiosoft\AdvsModule\Http\Controller\advsController@edit',
+ 'advs/edit_advs/{id}' => [
+ 'as' => 'visiosoft.module.advs::edit_adv',
+ 'uses' => 'Visiosoft\AdvsModule\Http\Controller\advsController@edit',
+ ],
'advs/status/{id},{type}' => [
'as' => 'visiosoft.module.advs::status',
'uses' => 'Visiosoft\AdvsModule\Http\Controller\advsController@statusAds'
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 5bf9e5a91..8001fc18c 100644
--- a/addons/default/visiosoft/advs-module/src/Http/Controller/advsController.php
+++ b/addons/default/visiosoft/advs-module/src/Http/Controller/advsController.php
@@ -387,6 +387,38 @@ class AdvsController extends PublicController
}
+ public function preview($id)
+ {
+ $categories = array();
+ $categories_id = array();
+
+ $adv = $this->adv_repository->getListItemAdv($id);
+
+ for ($i = 1; $i <= 10; $i++) {
+ $cat = "cat" . $i;
+ if ($adv->$cat != null) {
+ $item = $this->category_repository->getItem($adv->$cat);
+ if (!is_null($item)) {
+ $categories['cat' . $i] = [
+ 'name' => $item->name,
+ 'id' => $item->id
+ ];
+ $categories_id[] = $item->id;
+ }
+
+ }
+ }
+
+ if ($this->adv_model->is_enabled('customfields')) {
+ $features = app('Visiosoft\CustomfieldsModule\Http\Controller\cfController')->view($adv);
+ }
+
+ $isActiveDopings = $this->adv_model->is_enabled('dopings');
+
+ return $this->view->make('visiosoft.module.advs::new-ad/preview/preview',
+ compact('adv', 'categories', 'features', 'isActiveDopings'));
+ }
+
public function getLocations()
{
$table = $this->requestHttp->table;
@@ -591,11 +623,7 @@ class AdvsController extends PublicController
$events->dispatch(new EditAd($request->update_id, $settings, $adv));//Update Notify
}
- if ($isActiveDopings) {
- return redirect(route('add_doping', [$request->update_id]));
- } else {
- return redirect('/advs/adv/' . $request->update_id);
- }
+ return redirect(route('advs_preview', [$request->update_id]));
}
/* New Create Adv */