FEATURE: make users overview look less ugly

This commit is contained in:
Michal Kváček
2016-01-28 21:25:13 +01:00
parent 452280a6fe
commit 527b482ab8
4 changed files with 40 additions and 23 deletions
+21 -3
View File
@@ -2,19 +2,37 @@
namespace App\Http\Controllers\Admin;
use App\Enumerations\UserRoles;
use App\Enumerations\UserStates;
use App\Http\Controllers\Controller;
use App\Http\Requests;
use App\Models\User;
class UsersOverview extends Controller
{
public function getOverview($perPage = 12, $state = null)
public function getOverview($status = null, $perPage = 12)
{
$users = User::where('role', '!=', User::STATE_DELETED)->orderBy('id', 'desc');
$users = User::where('status', '<>', User::STATE_DELETED)
->orderBy('id', 'desc');
// get statuses
$statuses = UserStates::getWithTranslations();
$statuses[''] = trans('admin/userManagement.allStatuses');
unset($statuses[User::STATE_DELETED]);
// filter using status
if (!is_null($status) && isset($statuses[$status])) {
$users = $users->where('status', $status);
}
// setup pagination
$users = $users->paginate($perPage);
return view('admin.userManagement.overview', ['users' => $users]);
return view('admin.userManagement.overview', [
'users' => $users,
'roles' => UserRoles::getWithTranslations(),
'statuses' => $statuses,
'currentStatus' => $status
]);
}
}
+1 -1
View File
@@ -45,7 +45,7 @@ Route::group([
->name('users.detail');
// display list of all users registered into our system
Route::get('users/overview/{state?}', 'UsersOverview@getOverview')
Route::get('users/overview/{state?}/{perPage?}', 'UsersOverview@getOverview')
->name('users.overview');
// custom fields
@@ -13,6 +13,7 @@ return [
'status_deleted' => 'Deleted',
'status_blocked' => 'Blocked',
'status_active' => 'Active',
'allStatuses' => 'All',
'register' => 'Create user',
'registrationSuccessfull' => 'New user successfully added.',
'profile' => 'Your profile',
@@ -7,29 +7,27 @@
<div class="row">
<h2>@lang('admin/userManagement.overview')</h2>
<p>
@foreach($statuses as $status => $translation)
<a class="button tiny @if($status != $currentStatus) secondary @else primary @endif" href="{{route('users.overview', ['status' => $status])}}">{{$translation}}</a>
@endforeach
</p>
</div>
<div class="row" data-equalizer>
@forelse($users as $user)
<div class="user-detail large-3 medium-6 small-6 columns" data-equalizer-watch>
<a href="{{route('users.detail', ['id' => $user->id])}}">
<div class="user-img">
<img src="{{$user->gravatar(350)}}" alt="" />
<span class="badge @if($user->role == \App\Models\User::ROLE_ADMIN)
alert
@elseif ($user->role == \App\Models\User::ROLE_EDITOR)
warning
@else
secondary
@endif">
{{strtoupper($user->role)}}
</span>
</div>
<div class="user-info text-center">
{{ $user->name}}
</div>
</a>
<div class="user-detail large-2 medium-3 small-4 columns">
<div class="callout text-center small" data-equalizer-watch>
<a href="{{route('users.detail', ['id' => $user->id])}}" data-tooltip title="{{$roles[$user->role]}}">
<div class="user-img">
<img src="{{$user->gravatar(350)}}" alt="" />
</div>
<div class="user-info text-center">
{{ $user->name}}
</div>
</a>
</div>
</div>
@empty
<em>@lang('admin/userManagement.noUsers')</em>