Merge pull request #558 from openclassify/dia

#1391 [Admin] add select2 & combine user select
This commit is contained in:
Fatih Alp 2020-05-14 15:21:50 +03:00 committed by GitHub
commit dec697d44a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 30 additions and 13 deletions

View File

@ -27,4 +27,17 @@
width: 5%; width: 5%;
} }
}
/* Admin filter */
.select2-container--default .select2-selection--single {
height: calc(2.5rem - 2px);
display: flex;
align-items: center;
border: 1px solid rgba(0, 0, 0, 0.15);
border-radius: 0.17rem;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
top: unset;
} }

View File

@ -17,9 +17,6 @@ filter.checkUser = () => {
}); });
}; };
$('.sort-by-item').on('click', function () { $('.sort-by-item').on('click', function () {
let searchParams = new URLSearchParams(window.location.search); let searchParams = new URLSearchParams(window.location.search);
var sort_by = searchParams.get('sort_by'); var sort_by = searchParams.get('sort_by');
@ -158,6 +155,16 @@ $(document).ready(function () {
$('#save-search').on('click', function () { $('#save-search').on('click', function () {
filter.checkUser(); filter.checkUser();
}); });
// User filter
$("select[name=filter_User]").select2({
placeholder: $('select[name=filter_User] option:first-child').text()
});
// Country filter
$("select[name=filter_country]").select2({
placeholder: $('select[name=filter_country] option:first-child').text()
});
}); });
$('.ad-info-right-bar-video').tooltip({ $('.ad-info-right-bar-video').tooltip({

View File

@ -10,6 +10,7 @@ use Anomaly\UsersModule\User\Contract\UserRepositoryInterface;
use Anomaly\UsersModule\User\UserModel; use Anomaly\UsersModule\User\UserModel;
use Illuminate\Filesystem\Filesystem; use Illuminate\Filesystem\Filesystem;
use Illuminate\Http\Request; use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
use Visiosoft\AdvsModule\Adv\Table\Filter\CategoryFilterQuery; use Visiosoft\AdvsModule\Adv\Table\Filter\CategoryFilterQuery;
use Visiosoft\AdvsModule\Adv\Table\Filter\CityFilterQuery; use Visiosoft\AdvsModule\Adv\Table\Filter\CityFilterQuery;
use Visiosoft\AdvsModule\Adv\Table\Filter\StatusFilterQuery; use Visiosoft\AdvsModule\Adv\Table\Filter\StatusFilterQuery;
@ -43,8 +44,8 @@ class AdvsController extends AdminController
*/ */
public function index(AdvTableBuilder $table, \Anomaly\UsersModule\User\UserModel $userModel, CityModel $cityModel, CatsCategoryEntryModel $categoryModel) public function index(AdvTableBuilder $table, \Anomaly\UsersModule\User\UserModel $userModel, CityModel $cityModel, CatsCategoryEntryModel $categoryModel)
{ {
$table->addAsset("theme.css", "visiosoft.module.advs::css/custom.css"); $table->addAsset("styles.css", "visiosoft.module.advs::css/custom.css");
$table->addAsset('script.js', 'visiosoft.module.advs::js/list.js'); $table->addAsset('scripts.js', 'visiosoft.module.advs::js/list.js');
$table->addButtons([ $table->addButtons([
'status' => [ 'status' => [
@ -140,8 +141,10 @@ class AdvsController extends AdminController
$cities = $cityModel->all()->pluck('name', 'id')->all(); $cities = $cityModel->all()->pluck('name', 'id')->all();
$users = $userModel->all()->pluck('email', 'id')->all(); $users = $userModel->newQuery()
$phone = $userModel->all()->pluck('gsm_phone', 'id')->all(); ->select(DB::raw("CONCAT_WS('', first_name, ' ', last_name, ' (', gsm_phone, ' || ', email, ')') AS display_name"), 'id')
->pluck('display_name','id')
->toArray();
$categories = $categoryModel::query()->where('parent_category_id', null) $categories = $categoryModel::query()->where('parent_category_id', null)
->leftJoin('cats_category_translations', 'cats_category.id', '=', 'cats_category_translations.entry_id') ->leftJoin('cats_category_translations', 'cats_category.id', '=', 'cats_category_translations.entry_id')
->where('locale', config('app.locale')) ->where('locale', config('app.locale'))
@ -167,12 +170,6 @@ class AdvsController extends AdminController
'query' => UserFilterQuery::class, 'query' => UserFilterQuery::class,
'options' => $users, 'options' => $users,
], ],
'phone' => [
'exact' => true,
'filter' => 'select',
'query' => UserFilterQuery::class,
'options' => $phone,
],
'status' => [ 'status' => [
'filter' => 'select', 'filter' => 'select',
'query' => StatusFilterQuery::class, 'query' => StatusFilterQuery::class,