diff --git a/addons/default/visiosoft/advs-module/migrations/2020_12_18_131819_visiosoft.module.advs__create_status_stream.php b/addons/default/visiosoft/advs-module/migrations/2020_12_18_131819_visiosoft.module.advs__create_status_stream.php
new file mode 100644
index 000000000..d05cf2076
--- /dev/null
+++ b/addons/default/visiosoft/advs-module/migrations/2020_12_18_131819_visiosoft.module.advs__create_status_stream.php
@@ -0,0 +1,48 @@
+ 'status',
+ 'title_column' => 'slug',
+ 'translatable' => true,
+ 'versionable' => false,
+ 'trashable' => true,
+ 'searchable' => false,
+ 'sortable' => false,
+ ];
+
+ protected $fields = [
+ "is_system" => [
+ "type" => "anomaly.field_type.boolean",
+ "config" => [
+ "default_value" => false,
+ "mode" => "radio",
+ ]
+ ],
+ "user_access" => [
+ "type" => "anomaly.field_type.boolean",
+ "config" => [
+ "default_value" => true,
+ "mode" => "radio",
+ ]
+ ]
+ ];
+
+ protected $assignments = [
+ 'name' => [
+ 'required' => true,
+ 'translatable' => true,
+ ],
+ 'slug' => [
+ 'required' => true,
+ 'unique' => true,
+ ],
+ "is_system",
+ "user_access"
+ ];
+}
diff --git a/addons/default/visiosoft/advs-module/migrations/2020_12_18_134817_visiosoft.module.advs__create_user_status_field.php b/addons/default/visiosoft/advs-module/migrations/2020_12_18_134817_visiosoft.module.advs__create_user_status_field.php
new file mode 100644
index 000000000..690d449c1
--- /dev/null
+++ b/addons/default/visiosoft/advs-module/migrations/2020_12_18_134817_visiosoft.module.advs__create_user_status_field.php
@@ -0,0 +1,26 @@
+ 'advs',
+ ];
+
+ protected $fields = [
+ "user_status" => [
+ "type" => "anomaly.field_type.relationship",
+ "config" => [
+ "related" => \Visiosoft\AdvsModule\Status\StatusModel::class,
+ "mode" => "lookup",
+ ]
+ ],
+ ];
+
+ protected $assignments = [
+ 'user_status',
+ ];
+}
diff --git a/addons/default/visiosoft/advs-module/src/AdvsModule.php b/addons/default/visiosoft/advs-module/src/AdvsModule.php
index 50b814e24..532fbc93a 100644
--- a/addons/default/visiosoft/advs-module/src/AdvsModule.php
+++ b/addons/default/visiosoft/advs-module/src/AdvsModule.php
@@ -24,6 +24,11 @@ class AdvsModule extends Module
],
],
],
+ 'status' => [
+ 'buttons' => [
+ 'new_status',
+ ],
+ ],
'product_options' => [
'title' => 'visiosoft.module.advs::section.product_options.title',
'buttons' => [
diff --git a/addons/default/visiosoft/profile-module/resources/assets/js/ads.js b/addons/default/visiosoft/profile-module/resources/assets/js/ads.js
index 05128b421..5f3616bd2 100644
--- a/addons/default/visiosoft/profile-module/resources/assets/js/ads.js
+++ b/addons/default/visiosoft/profile-module/resources/assets/js/ads.js
@@ -125,43 +125,70 @@ function addAdsRow(id, href, image, name, formatted_price, city, country, cat1,
}
function dropdownRow(id, type) {
- var dropdown = "
\n" +
- " \n" +
- "
+
+ `;
return dropdown;
}
+$(document).on('click', '.adv-status-toggle', function (e) {
+ e.stopPropagation();
+ e.preventDefault();
+
+ if (!$(this).next('div').hasClass('show')) {
+ $(this).next('div').addClass('show');
+ } else {
+ $(this).next('div').removeClass('show');
+ }
+})
+
function addDropdownBlock() {
const dropdowns = $('.my-ads-dropdown')
for (let i = 0; i < dropdowns.length; i++) {
diff --git a/addons/default/visiosoft/profile-module/resources/views/profile/partials/navigation.twig b/addons/default/visiosoft/profile-module/resources/views/profile/partials/navigation.twig
index 340e9ca46..5c38fe95f 100644
--- a/addons/default/visiosoft/profile-module/resources/views/profile/partials/navigation.twig
+++ b/addons/default/visiosoft/profile-module/resources/views/profile/partials/navigation.twig
@@ -38,4 +38,4 @@
-{{ asset_add("scripts.js", "visiosoft.module.profile::assets/js/profile-nav.js") }}
\ No newline at end of file
+{{ asset_add("scripts.js", "visiosoft.module.profile::assets/js/profile-nav.js") }}
diff --git a/addons/default/visiosoft/profile-module/src/Http/Controller/MyProfileController.php b/addons/default/visiosoft/profile-module/src/Http/Controller/MyProfileController.php
index 01920904c..c4f169965 100644
--- a/addons/default/visiosoft/profile-module/src/Http/Controller/MyProfileController.php
+++ b/addons/default/visiosoft/profile-module/src/Http/Controller/MyProfileController.php
@@ -2,31 +2,24 @@
use Anomaly\SettingsModule\Setting\Contract\SettingRepositoryInterface;
use Anomaly\Streams\Platform\Http\Controller\PublicController;
-use Anomaly\Streams\Platform\Model\Options\OptionsAdvertisementEntryModel;
use Anomaly\Streams\Platform\Model\Users\UsersUsersEntryModel;
use Anomaly\UsersModule\User\Contract\UserRepositoryInterface;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
use Rinvex\Subscriptions\Models\Plan;
-use Rinvex\Subscriptions\Models\PlanSubscription;
use Visiosoft\AdvsModule\Adv\AdvModel;
-use Visiosoft\AdvsModule\Adv\Contract\AdvRepositoryInterface;
use Visiosoft\AdvsModule\Adv\Event\ChangeStatusAd;
use Visiosoft\LocationModule\Country\CountryModel;
use Visiosoft\AlgoliaModule\Search\SearchModel;
use Visiosoft\CloudsiteModule\CloudsiteModule;
-use Visiosoft\CloudsiteModule\Site\SiteModel;
-use Visiosoft\OrdersModule\Orderdetail\Event\AgainPuchaseOrder;
use Visiosoft\PackagesModule\Http\Controller\PackageFEController;
use Visiosoft\MessagesModule\Message\MessageModel;
use Visiosoft\PackagesModule\Package\PackageModel;
-use Visiosoft\PackagesModule\User\UserModel;
use Visiosoft\ProfileModule\Adress\AdressModel;
use Visiosoft\ProfileModule\Adress\Contract\AdressRepositoryInterface;
use Visiosoft\ProfileModule\Adress\Form\AdressFormBuilder;
use Visiosoft\ProfileModule\Education\EducationModel;
use Visiosoft\ProfileModule\EducationPart\EducationPartModel;
-use Visiosoft\ProfileModule\EducationPartOption\EducationPartOptionModel;
use Visiosoft\ProfileModule\Profile\Form\ProfileFormBuilder;
use Illuminate\Contracts\Events\Dispatcher;
@@ -51,7 +44,7 @@ class MyProfileController extends PublicController
protected $user;
- public function home(ProfileFormBuilder $form, AdvRepositoryInterface $advRepository)
+ public function home(ProfileFormBuilder $form)
{
$advs_count = new AdvModel();
$advs_count = count($advs_count->myAdvsByUser()->get());