filter profile

This commit is contained in:
vedatakd 2020-02-27 17:29:20 +03:00
parent f9c74ca4f1
commit 8f6c5f05e2
4 changed files with 44 additions and 21 deletions

View File

@ -8,4 +8,6 @@ return [
'update_profile' => 'Update Profile',
'delete' => 'Delete',
'edit' => 'Edit',
'go_profile' => 'Go to Profile Detail',
'go_user' => 'Go to User Detail',
];

View File

@ -8,4 +8,6 @@ return [
'update_profile' => 'Profili Güncelle',
'delete' => 'Sil',
'edit' => 'Düzenle',
'go_profile' => 'Profil Detayları',
'go_user' => 'Kullanıcı Detayları',
];

View File

@ -1,7 +1,9 @@
<?php namespace Visiosoft\ProfileModule\Http\Controller\Admin;
use Anomaly\Streams\Platform\Entry\EntryModel;
use Anomaly\Streams\Platform\Model\Users\UsersUsersEntryModel;
use Anomaly\Streams\Platform\Ui\Table\TableBuilder;
use Anomaly\UsersModule\User\User;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Redirect;
use Visiosoft\LocationModule\Country\CountryModel;
@ -9,6 +11,7 @@ use Visiosoft\ProfileModule\Profile\Form\ProfileFormBuilder;
use Visiosoft\ProfileModule\Profile\ProfileModel;
use Visiosoft\ProfileModule\Profile\Table\ProfileTableBuilder;
use Anomaly\Streams\Platform\Http\Controller\AdminController;
use Visiosoft\StoreModule\User\Contract\UserRepositoryInterface;
class ProfileController extends AdminController
{
@ -21,8 +24,14 @@ class ProfileController extends AdminController
*/
public function index(ProfileTableBuilder $table, Request $request)
{
$users = UsersUsersEntryModel::query()->get();
$table->setTableEntries($users);
$table->setColumns([
'email' => [
'value' => function (UserRepositoryInterface $user, EntryModel $entry) {
return User::query()->find($entry->id)->email;
}
],
'gsm_phone'
]);
return $table->render();
}
@ -32,34 +41,30 @@ class ProfileController extends AdminController
* @param ProfileFormBuilder $form
* @return \Symfony\Component\HttpFoundation\Response
*/
public function edit(ProfileFormBuilder $form,$id)
public function edit(ProfileFormBuilder $form, $id)
{
$users = UsersUsersEntryModel::find($id);
$profiles = ProfileModel::query()->where('user_id',$id)->orderBy("id")->first();
if($profiles == null)
{
$profiles = ProfileModel::query()->where('user_id', $id)->orderBy("id")->first();
if ($profiles == null) {
$newProfile = [];
$newProfile ['user_id'] = $id;
$newProfile ['country_id'] = null;
ProfileModel::query()->create($newProfile);
$profiles = ProfileModel::query()->where('user_id',$id)->orderBy("id")->first();
$profiles = ProfileModel::query()->where('user_id', $id)->orderBy("id")->first();
}
$country = CountryModel::all();
return $this->view->make('visiosoft.module.profile::admin.profile.edit',compact('users','profiles','country','form'));
return $this->view->make('visiosoft.module.profile::admin.profile.edit', compact('users', 'profiles', 'country', 'form'));
}
public function update(ProfileFormBuilder $form, Request $request,$id)
public function update(ProfileFormBuilder $form, Request $request, $id)
{
$all = $request->all();
if($all['email'] == "" OR $all['username'] == "")
{
if ($all['email'] == "" OR $all['username'] == "") {
$error = [];
if($all['email'] == "")
{
if ($all['email'] == "") {
$error[] = trans('visiosoft.module.profile::message.email');
}
if($all['username'] == "")
{
if ($all['username'] == "") {
$error[] = trans('visiosoft.module.profile::message.username');
}
return Redirect::back()->with('error', $error);
@ -74,14 +79,13 @@ class ProfileController extends AdminController
$userModule['activated'] = $all['activated'];
$userModule['enabled'] = $all['enabled'];
UsersUsersEntryModel::query()->find($id)->update($userModule);
foreach ($userModule as $key => $val)
{
foreach ($userModule as $key => $val) {
unset($all[$key]);
}
$all['file_id'] = $all['file'];
unset($all['file']);
unset($all['_token'],$all['action']);
ProfileModel::query()->where('user_id',$id)->update($all);
unset($all['_token'], $all['action']);
ProfileModel::query()->where('user_id', $id)->update($all);
$message = [];
$message[] = trans('visiosoft.module.profile::message.success_update');
return redirect('admin/profile')->with('success', $message);

View File

@ -17,7 +17,16 @@ class ProfileTableBuilder extends TableBuilder
*
* @var array|string
*/
protected $filters = [];
protected $filters = [
'search' => [
'filter' => 'search',
'fields' => [
'gsm_phone',
'land_phone','office_phone','register_type',
'identification_number',
],
],
];
/**
* The table columns.
@ -34,7 +43,13 @@ class ProfileTableBuilder extends TableBuilder
* @var array|string
*/
protected $buttons = [
'edit'
'go_user'=> [
'type' => 'info',
'icon' => 'fa fa-user'
],
'edit' => [
'text' => 'visiosoft.module.profile::button.go_profile'
],
];
/**