diff --git a/addons/default/visiosoft/advs-module/resources/lang/en/message.php b/addons/default/visiosoft/advs-module/resources/lang/en/message.php index d7cb4c7de..d3a67fb0a 100644 --- a/addons/default/visiosoft/advs-module/resources/lang/en/message.php +++ b/addons/default/visiosoft/advs-module/resources/lang/en/message.php @@ -27,4 +27,5 @@ return [ 'success_delete' => 'Ad Deleted', 'pending_ad_status' => 'Your ad is pending approval by the Editor.', 'extended' => ':number ad(s) has been extended successfully.', + 'category_not_exist' => 'This category does not exist anymore!', ]; diff --git a/addons/default/visiosoft/advs-module/src/Adv/AdvRepository.php b/addons/default/visiosoft/advs-module/src/Adv/AdvRepository.php index 94b0c6ebf..50f7aac4c 100644 --- a/addons/default/visiosoft/advs-module/src/Adv/AdvRepository.php +++ b/addons/default/visiosoft/advs-module/src/Adv/AdvRepository.php @@ -84,12 +84,15 @@ class AdvRepository extends EntryRepository implements AdvRepositoryInterface if (!empty($param['cat'])) { $cat = new CategoryModel(); $cat_d = $cat->find($param['cat']); - if ($cat_d->parent_category_id == null) - $catLevel = 1; - else - $catLevel = $cat->getCatLevel($param['cat']); - $catLevel = "cat" . $catLevel; - $query = $query->where($catLevel, $param['cat']); + if ($cat_d) { + if ($cat_d->parent_category_id == null) { + $catLevel = 1; + } else { + $catLevel = $cat->getCatLevel($param['cat']); + } + $catLevel = "cat" . $catLevel; + $query = $query->where($catLevel, $param['cat']); + } } if (!empty($param['user'])) { $query = $query->where('advs_advs.created_by_id', $param['user']); 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 77c01c3db..101e7f943 100644 --- a/addons/default/visiosoft/advs-module/src/Http/Controller/advsController.php +++ b/addons/default/visiosoft/advs-module/src/Http/Controller/advsController.php @@ -158,11 +158,16 @@ class AdvsController extends PublicController } } elseif (isset($param['cat']) && !empty($param['cat'])) { $categoryId = $this->category_repository->find($param['cat']); - return redirect($this->fullLink( - $param, - route('adv_list_seo', [$categoryId->slug]), - array() - )); + if ($categoryId) { + return redirect($this->fullLink( + $param, + route('adv_list_seo', [$categoryId->slug]), + array() + )); + } else { + $this->messages->error(trans('visiosoft.module.advs::message.category_not_exist')); + return redirect('/'); + } } // Search by city slug