From 26d3896f4d34dc4bc164de2934c8167b044fb09e Mon Sep 17 00:00:00 2001 From: Diatrex Date: Fri, 14 Aug 2020 11:42:44 +0300 Subject: [PATCH] =?UTF-8?q?#1916=20admin=20ilan=20arama=20=C3=A7al=C4=B1?= =?UTF-8?q?=C5=9Fm=C4=B1yor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/Adv/Table/AdvTableBuilder.php | 8 ++++---- .../Adv/Table/Filter/NameDescFilterQuery.php | 20 +++++++++++++++++++ 2 files changed, 24 insertions(+), 4 deletions(-) create mode 100644 addons/default/visiosoft/advs-module/src/Adv/Table/Filter/NameDescFilterQuery.php diff --git a/addons/default/visiosoft/advs-module/src/Adv/Table/AdvTableBuilder.php b/addons/default/visiosoft/advs-module/src/Adv/Table/AdvTableBuilder.php index 98b5d1ca8..f85f0db79 100644 --- a/addons/default/visiosoft/advs-module/src/Adv/Table/AdvTableBuilder.php +++ b/addons/default/visiosoft/advs-module/src/Adv/Table/AdvTableBuilder.php @@ -4,6 +4,7 @@ use Anomaly\Streams\Platform\Model\Users\UsersUsersEntryModel; use Anomaly\Streams\Platform\Ui\Table\TableBuilder; use Anomaly\UsersModule\UsersModule; use Illuminate\Database\Eloquent\Builder; +use Visiosoft\AdvsModule\Adv\Table\Filter\NameDescFilterQuery; use Visiosoft\AdvsModule\Adv\Table\Filter\UserFilterQuery; use Visiosoft\AdvsModule\Adv\Table\Handler\AdvHandler; use Visiosoft\AdvsModule\Adv\Table\Views\All; @@ -40,10 +41,9 @@ class AdvTableBuilder extends TableBuilder */ protected $filters = [ 'search' => [ - 'fields' => [ - 'name', - 'advs_desc', - ] + 'filter' => 'input', + 'placeholder' => 'visiosoft.module.advs::field.search', + 'query' => NameDescFilterQuery::class, ], 'country', 'id' => [ diff --git a/addons/default/visiosoft/advs-module/src/Adv/Table/Filter/NameDescFilterQuery.php b/addons/default/visiosoft/advs-module/src/Adv/Table/Filter/NameDescFilterQuery.php new file mode 100644 index 000000000..aa9a6e88f --- /dev/null +++ b/addons/default/visiosoft/advs-module/src/Adv/Table/Filter/NameDescFilterQuery.php @@ -0,0 +1,20 @@ +join('advs_advs_translations', 'advs_advs.id', '=', 'advs_advs_translations.entry_id'); + + $query->where('name', 'LIKE', '%' . $filter->getValue() . '%'); + $query->orWhere('advs_desc', 'LIKE', '%' . $filter->getValue() . '%'); + $query->orderByRaw("FIELD(locale, '$defaultLocale', '$appLocale') DESC"); + } +}