From 97137ec0bfaaaca732abde0c90d06040ecb8b709 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=BCneyt=20=C5=9Eent=C3=BCrk?= Date: Wed, 10 May 2023 11:39:22 +0300 Subject: [PATCH 1/2] Added user show page --- app/Http/Controllers/Auth/Users.php | 16 +- app/Models/Auth/User.php | 12 +- resources/views/auth/users/index.blade.php | 2 +- resources/views/auth/users/show.blade.php | 236 +++++++++++++++++++++ 4 files changed, 260 insertions(+), 6 deletions(-) create mode 100644 resources/views/auth/users/show.blade.php diff --git a/app/Http/Controllers/Auth/Users.php b/app/Http/Controllers/Auth/Users.php index 03965e65b..fa381c9cb 100644 --- a/app/Http/Controllers/Auth/Users.php +++ b/app/Http/Controllers/Auth/Users.php @@ -47,9 +47,17 @@ class Users extends Controller * * @return Response */ - public function show() + public function show(User $user) { - return redirect()->route('users.index'); + $u = new \stdClass(); + $u->role = $user->roles()->first(); + $u->landing_pages = []; + + event(new LandingPageShowing($u)); + + $landing_pages = $u->landing_pages; + + return view('auth.users.show', compact('user', 'landing_pages')); } /** @@ -95,7 +103,7 @@ class Users extends Controller $response = $this->ajaxDispatch(new CreateUser($request)); if ($response['success']) { - $response['redirect'] = route('users.index'); + $response['redirect'] = route('users.show', $response['data']->id); $message = trans('messages.success.invited', ['type' => trans_choice('general.users', 1)]); @@ -191,7 +199,7 @@ class Users extends Controller $response = $this->ajaxDispatch(new UpdateUser($user, $request)); if ($response['success']) { - $response['redirect'] = user()->can('read-auth-users') ? route('users.index') : route('users.edit', $user->id); + $response['redirect'] = user()->can('read-auth-users') ? route('users.show', $user->id) : route('users.edit', $user->id); $message = trans('messages.success.updated', ['type' => $user->name]); diff --git a/app/Models/Auth/User.php b/app/Models/Auth/User.php index 0caf3a9f2..88eeeea78 100644 --- a/app/Models/Auth/User.php +++ b/app/Models/Auth/User.php @@ -378,13 +378,23 @@ class User extends Authenticatable implements HasLocalePreference return $actions; } + $actions[] = [ + 'title' => trans('general.show'), + 'icon' => 'visibility', + 'url' => route('users.show', $this->id), + 'permission' => 'read-auth-users', + 'attributes' => [ + 'id' => 'index-line-actions-show-user-' . $this->id, + ], + ]; + $actions[] = [ 'title' => trans('general.edit'), 'icon' => 'edit', 'url' => route('users.edit', $this->id), 'permission' => 'update-auth-users', 'attributes' => [ - 'id' => 'index-line-actions-show-user-' . $this->id, + 'id' => 'index-line-actions-edit-user-' . $this->id, ], ]; diff --git a/resources/views/auth/users/index.blade.php b/resources/views/auth/users/index.blade.php index e7ac922dd..ddeb0518a 100644 --- a/resources/views/auth/users/index.blade.php +++ b/resources/views/auth/users/index.blade.php @@ -46,7 +46,7 @@ @foreach($users as $item) - + + + {{ $user->name }} + + + + @if (! $user->enabled) + + @endif + + + + + + @stack('create_button_start') + + @stack('edit_button_start') + + @can('update-auth-users') + + {{ trans('general.edit') }} + + @endcan + + @stack('edit_button_end') + + + + @stack('more_button_start') + + + + more_horiz + + + @stack('delete_button_start') + + @can('delete-auth-users') + + @endcan + + @stack('delete_button_end') + + + @stack('more_button_end') + + + + + + @stack('profile_start') + + + + @if (setting('default.use_gravatar', '0') == '1') + + @elseif (is_object($user->picture)) + + @else + + @endif + + + {{ $user->email }} + + + + + + + + + @stack('name_input_start') + @stack('name_input_end') + + @stack('logo_input_start') + @stack('logo_input_end') + + @stack('email_input_start') + @stack('email_input_end') + + @stack('roles_input_start') +
+
{{ trans_choice('general.roles', 1) }}
+ {{ $user->roles()?->first()?->display_name }} +
+ @stack('roles_input_end') + + @stack('landing_page_input_start') +
+
{{ trans('auth.landing_page') }}
+ {{ $landing_pages[$user->landing_page] }} +
+ @stack('landing_page_input_end') + + @stack('locale_input_start') +
+
{{ trans_choice('general.languages', 1) }}
+ {{ language()->allowed()[$user->locale] }} +
+ @stack('locale_input_end') +
+ + + + + @stack('companies_nav_start') + + + + @stack('companies_nav_end') + + + + @stack('companies_tab_start') + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @foreach($user->companies as $item) + + + {{ $item->id }} + + + + +
+ {{ $item->name }} +
+ + @if (! $item->enabled) + + @endif +
+ + @if ($item->tax_number) + {{ $item->tax_number }} + @else + + @endif + +
+ + + + @if ($item->email) + {{ $item->email }} + @else + + @endif + + + @if ($item->phone) + {{ $item->phone }} + @else + + @endif + + + + + + @if ($item->country) + + @else + + @endif + + + @if ($item->currency) + + @else + + @endif + + +
+ @endforeach +
+
+
+ + @stack('companies_tab_end') +
+
+
+
+ +
+ + + From e6c50471459824584aeb331923ea9e85ba722f06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=BCneyt=20=C5=9Eent=C3=BCrk?= Date: Wed, 10 May 2023 12:02:27 +0300 Subject: [PATCH 2/2] added login user assign company control --- app/Http/Controllers/Auth/Users.php | 4 +- resources/views/auth/users/show.blade.php | 147 ++++++++++++++-------- 2 files changed, 95 insertions(+), 56 deletions(-) diff --git a/app/Http/Controllers/Auth/Users.php b/app/Http/Controllers/Auth/Users.php index fa381c9cb..b11328c4d 100644 --- a/app/Http/Controllers/Auth/Users.php +++ b/app/Http/Controllers/Auth/Users.php @@ -57,7 +57,9 @@ class Users extends Controller $landing_pages = $u->landing_pages; - return view('auth.users.show', compact('user', 'landing_pages')); + $companies = $user->companies()->collect(); + + return view('auth.users.show', compact('user', 'landing_pages', 'companies')); } /** diff --git a/resources/views/auth/users/show.blade.php b/resources/views/auth/users/show.blade.php index 529317f36..655ec66f8 100644 --- a/resources/views/auth/users/show.blade.php +++ b/resources/views/auth/users/show.blade.php @@ -160,65 +160,102 @@ - @foreach($user->companies as $item) - - - {{ $item->id }} - + @foreach($companies as $item) + @if (in_array($item->id, user()->company_ids)) + + + {{ $item->id }} + - - -
- {{ $item->name }} -
+ + +
+ {{ $item->name }} +
- @if (! $item->enabled) - - @endif -
- - @if ($item->tax_number) - {{ $item->tax_number }} - @else - - @endif - -
+ @if (! $item->enabled) + + @endif +
+ + @if ($item->tax_number) + {{ $item->tax_number }} + @else + + @endif + +
- - - @if ($item->email) - {{ $item->email }} - @else - - @endif - - - @if ($item->phone) - {{ $item->phone }} - @else - - @endif - - + + + @if ($item->email) + {{ $item->email }} + @else + + @endif + + + @if ($item->phone) + {{ $item->phone }} + @else + + @endif + + - - - @if ($item->country) - - @else - - @endif - - - @if ($item->currency) - - @else - - @endif - - -
+ + + @if ($item->country) + + @else + + @endif + + + @if ($item->currency) + + @else + + @endif + + +
+ @else + + + *** + + + + +
+ *** +
+
+ + *** + +
+ + + + *** + + + *** + + + + + + *** + + + *** + + +
+ @endif @endforeach