38 lines
1.1 KiB
PHP
38 lines
1.1 KiB
PHP
<?php
|
|
|
|
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($status = null, $perPage = 12)
|
|
{
|
|
$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,
|
|
'roles' => UserRoles::getWithTranslations(),
|
|
'statuses' => $statuses,
|
|
'currentStatus' => $status
|
|
]);
|
|
}
|
|
} |