Skip to content

Commit b1e9229

Browse files
authored
Merge pull request #14998 from timoschwarzer/feature/department-manager-in-table
Added #14997: Display department manager in user view and list
2 parents f4decbf + 443f69b commit b1e9229

File tree

4 files changed

+88
-29
lines changed

4 files changed

+88
-29
lines changed

app/Http/Transformers/UsersTransformer.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,10 @@ public function transformUser(User $user)
5050
'id' => (int) $user->department->id,
5151
'name'=> e($user->department->name),
5252
] : null,
53+
'department_manager' => ($user->department?->manager) ? [
54+
'id' => (int) $user->department->manager->id,
55+
'name'=> e($user->department->manager->full_name),
56+
] : null,
5357
'location' => ($user->userloc) ? [
5458
'id' => (int) $user->userloc->id,
5559
'name'=> e($user->userloc->name),

app/Presenters/UserPresenter.php

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,15 @@ public static function dataTableLayout()
206206
'visible' => true,
207207
'formatter' => 'departmentsLinkObjFormatter',
208208
],
209+
[
210+
'field' => 'department_manager',
211+
'searchable' => true,
212+
'sortable' => true,
213+
'switchable' => true,
214+
'title' => trans('admin/users/general.department_manager'),
215+
'visible' => true,
216+
'formatter' => 'usersLinkObjFormatter',
217+
],
209218
[
210219
'field' => 'location',
211220
'searchable' => true,

resources/lang/en-US/admin/users/general.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,5 @@
5353
'next_save_user' => 'Next: Save User',
5454
'all_assigned_list_generation' => 'Generated on:',
5555
'email_user_creds_on_create' => 'Email this user their credentials?',
56+
'department_manager' => 'Department Manager',
5657
];

resources/views/users/view.blade.php

Lines changed: 74 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,27 @@
129129

130130

131131
@can('update', $user)
132+
<li class="dropdown pull-right">
133+
<a class="dropdown-toggle" data-toggle="dropdown" href="#">
134+
<span class="hidden-xs"><i class="fas fa-cog" aria-hidden="true"></i></span>
135+
<span class="hidden-lg hidden-md hidden-xl"><i class="fas fa-cog fa-2x" aria-hidden="true"></i></span>
136+
137+
<span class="hidden-xs hidden-sm">
138+
{{ trans('button.actions') }}
139+
</span>
140+
<span class="caret"></span>
141+
</a>
142+
<ul class="dropdown-menu">
143+
<li><a href="{{ route('users.edit', $user->id) }}">{{ trans('admin/users/general.edit') }}</a></li>
144+
<li><a href="{{ route('users.clone.show', $user->id) }}">{{ trans('admin/users/general.clone') }}</a></li>
145+
@if ((Auth::user()->id !== $user->id) && (!config('app.lock_passwords')) && ($user->deleted_at=='') && ($user->isDeletable()))
146+
<li><a href="{{ route('users.destroy', $user->id) }}">{{ trans('button.delete') }}</a></li>
147+
@endif
148+
</ul>
149+
</li>
150+
@endcan
151+
152+
@can('update', \App\Models\User::class)
132153
<li class="pull-right">
133154
<a href="#" data-toggle="modal" data-target="#uploadFileModal">
134155
<span class="hidden-xs"><x-icon type="paperclip" /></span>
@@ -143,11 +164,19 @@
143164
<div class="tab-pane active" id="details">
144165
<div class="row">
145166

167+
@if ($user->deleted_at!='')
168+
<div class="col-md-12">
169+
<div class="callout callout-warning">
170+
<i class="icon fas fa-exclamation-triangle"></i>
171+
{{ trans('admin/users/message.user_deleted_warning') }}
172+
</div>
173+
</div>
174+
@endif
175+
146176
<div class="info-stack-container">
147177
<!-- Start button column -->
148178
<div class="col-md-3 col-xs-12 col-sm-push-9 info-stack">
149179

150-
151180

152181
<div class="col-md-12 text-center">
153182

@@ -156,10 +185,10 @@
156185
<div class="{{ ($user->isSuperUser()) ? 'text-danger' : ' text-orange'}}" style="font-weight: bold">{{ ($user->isSuperUser()) ? strtolower(trans('general.superuser')) : strtolower(trans('general.admin_user')) }}</div>
157186
@endif
158187

159-
188+
160189
</div>
161190
<div class="col-md-12 text-center">
162-
<img src="{{ $user->present()->gravatar() }}" class=" img-thumbnail hidden-print" style="margin-bottom: 20px;" alt="{{ $user->present()->fullName() }}">
191+
<img src="{{ $user->present()->gravatar() }}" class=" img-thumbnail hidden-print" style="margin-bottom: 20px;" alt="{{ $user->present()->fullName() }}">
163192
</div>
164193

165194
@can('update', $user)
@@ -173,6 +202,7 @@
173202

174203
@can('view', $user)
175204
<div class="col-md-12" style="padding-top: 5px;">
205+
176206
@if($user->allAssignedCount() != '0')
177207
<a href="{{ route('users.print', $user->id) }}" style="width: 100%;" class="btn btn-sm btn-primary btn-social hidden-print" target="_blank" rel="noopener">
178208
<x-icon type="print" />
@@ -283,15 +313,16 @@
283313
@endcan
284314
<br><br>
285315
</div>
286-
316+
287317
<!-- End button column -->
288318

289319
<div class="col-md-9 col-xs-12 col-sm-pull-3 info-stack">
290320

291321
<div class="row-new-striped">
292-
322+
293323
<div class="row">
294324
<!-- name -->
325+
295326

296327
<div class="col-md-3">
297328
{{ trans('admin/users/table.name') }}
@@ -302,7 +333,7 @@
302333

303334
</div>
304335

305-
336+
306337

307338
<!-- company -->
308339
@if (!is_null($user->company))
@@ -322,7 +353,7 @@
322353
</div>
323354

324355
</div>
325-
356+
326357
@endif
327358

328359
<!-- username -->
@@ -351,7 +382,7 @@
351382
{{ trans('general.address') }}
352383
</div>
353384
<div class="col-md-9">
354-
385+
355386
@if ($user->address)
356387
{{ $user->address }} <br>
357388
@endif
@@ -443,7 +474,7 @@
443474
<div class="col-md-9">
444475
{{ $user->employee_num }}
445476
</div>
446-
477+
447478
</div>
448479
@endif
449480

@@ -464,7 +495,7 @@
464495

465496
@endif
466497

467-
498+
468499
@if ($user->email)
469500
<!-- email -->
470501
<div class="row">
@@ -529,17 +560,29 @@
529560

530561

531562
@if ($user->department)
532-
<!-- empty -->
533-
<div class="row">
534-
<div class="col-md-3">
535-
{{ trans('general.department') }}
536-
</div>
537-
<div class="col-md-9">
538-
<a href="{{ route('departments.show', $user->department) }}">
539-
{{ $user->department->name }}
540-
</a>
563+
<!-- empty -->
564+
<div class="row">
565+
<div class="col-md-3">
566+
{{ trans('general.department') }}
567+
</div>
568+
<div class="col-md-9">
569+
<a href="{{ route('departments.show', $user->department) }}">
570+
{{ $user->department->name }}
571+
</a>
572+
</div>
541573
</div>
542-
</div>
574+
@if($user->department->manager)
575+
<div class="row">
576+
<div class="col-md-3">
577+
{{ trans('admin/users/general.department_manager') }}
578+
</div>
579+
<div class="col-md-9">
580+
<a href="{{ route('users.show', $user->department->manager) }}">
581+
{{ $user->department->manager->full_name }}
582+
</a>
583+
</div>
584+
</div>
585+
@endif
543586
@endif
544587

545588
@if ($user->created_at)
@@ -579,8 +622,8 @@
579622
{{ trans('general.no') }}
580623
@endif
581624
</div>
582-
</div>
583-
625+
</div>
626+
584627
<!-- remote -->
585628
<div class="row">
586629
<div class="col-md-3">
@@ -655,17 +698,18 @@
655698
{{ trans('admin/users/general.two_factor_active') }}
656699
</div>
657700
<div class="col-md-9">
701+
658702
@if ($user->two_factor_active())
659703
<x-icon type="checkmark" class="fa-fw text-success" />
660704
{{ trans('general.yes') }}
661705
@else
662706
<x-icon type="x" class="fa-fw text-danger" />
663707
{{ trans('general.no') }}
664708
@endif
665-
709+
666710
</div>
667711
</div>
668-
712+
669713
<!-- 2FA enrolled -->
670714
<div class="row two_factor_resetrow">
671715
<div class="col-md-3">
@@ -682,16 +726,16 @@
682726

683727
</div>
684728
</div>
685-
729+
686730
@if ((Auth::user()->isSuperUser()) && ($user->two_factor_active_and_enrolled()) && ($snipeSettings->two_factor_enabled!='0') && ($snipeSettings->two_factor_enabled!=''))
687-
731+
688732
<!-- 2FA reset -->
689733
<div class="row">
690734
<div class="col-md-3">
691735

692736
</div>
693737
<div class="col-md-9">
694-
738+
695739
<a class="btn btn-default btn-sm" id="two_factor_reset" style="margin-right: 10px; margin-top: 10px;">
696740
{{ trans('admin/settings/general.two_factor_reset') }}
697741
</a>
@@ -702,16 +746,17 @@
702746
<span id="two_factor_resetstatus">
703747
</span>
704748
<br>
749+
705750
<p class="help-block" style="line-height: 1.6;">
706751
{{ trans('admin/settings/general.two_factor_reset_help') }}
707752
</p>
708753

709754

710755
</div>
711756
</div>
712-
@endif
757+
@endif
713758
@endif
714-
759+
715760

716761
@if ($user->notes)
717762
<!-- empty -->

0 commit comments

Comments
 (0)