feat(users): add account indicators to management page, update old refs
This commit is contained in:
@@ -33,11 +33,6 @@ class Application extends Model
|
||||
|
||||
];
|
||||
|
||||
public function oneoffApplicant()
|
||||
{
|
||||
return $this->hasOne('App\OneoffApplicant', 'application_id', 'id');
|
||||
}
|
||||
|
||||
public function user()
|
||||
{
|
||||
return $this->belongsTo('App\User', 'applicantUserID', 'id');
|
||||
@@ -70,11 +65,4 @@ class Application extends Model
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
public function isOneoff()
|
||||
{
|
||||
return $this->user->id == 1; // ID 1 is always the ghost
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@@ -127,12 +127,15 @@ class RegisterController extends Controller
|
||||
*/
|
||||
protected function create(array $data)
|
||||
{
|
||||
$ip = IP::shouldCollect() ? request()->ip() : '0.0.0.0';
|
||||
|
||||
$user = User::create([
|
||||
'uuid' => $data['uuid'] ?? "disabled",
|
||||
'name' => $data['name'],
|
||||
'email' => $data['email'],
|
||||
'password' => Hash::make($data['password']),
|
||||
'originalIP' => IP::shouldCollect() ? request()->ip() : '0.0.0.0',
|
||||
'registrationIp' => $ip,
|
||||
'currentIp' => $ip
|
||||
]);
|
||||
|
||||
$user->assignRole('user');
|
||||
|
@@ -100,7 +100,7 @@ class ProfileController extends Controller
|
||||
'insta' => $socialMediaProfiles['links']['insta'] ?? 'UpdateMe',
|
||||
'discord' => $socialMediaProfiles['links']['discord'] ?? 'UpdateMe#12345',
|
||||
'since' => $createdDate->englishMonth.' '.$createdDate->year,
|
||||
'ipInfo' => IP::lookup($user->originalIP),
|
||||
'ipInfo' => IP::lookup($user->currentIp),
|
||||
'roles' => $roleList,
|
||||
'suspensionInfo' => $suspensionInfo
|
||||
]);
|
||||
|
@@ -61,7 +61,7 @@ class UserController extends Controller
|
||||
{
|
||||
$this->authorize('viewPlayers', User::class);
|
||||
|
||||
return view('dashboard.administration.players')
|
||||
return view('dashboard.administration.users')
|
||||
->with([
|
||||
'users' => User::with('roles')->paginate('6'),
|
||||
'numUsers' => count(User::all()),
|
||||
@@ -91,7 +91,7 @@ class UserController extends Controller
|
||||
if (! $matchingUsers->isEmpty()) {
|
||||
$request->session()->flash('success', __('There were :usersCount user(s) matching your search.', ['usersCount' => $matchingUsers->count()]));
|
||||
|
||||
return view('dashboard.administration.players')
|
||||
return view('dashboard.administration.users')
|
||||
->with([
|
||||
'users' => $matchingUsers,
|
||||
'numUsers' => count(User::all()),
|
||||
@@ -170,7 +170,12 @@ class UserController extends Controller
|
||||
->with([
|
||||
'user' => $user,
|
||||
'roles' => $roleList,
|
||||
'ipInfo' => IP::lookup($request->ip())
|
||||
'isVerified' => $user->isVerified(),
|
||||
'isLocked' => $suspensionService->isLocked($user),
|
||||
'isSuspended' => $suspensionService->isSuspended($user),
|
||||
'suspensionReason' => $suspensionService->getSuspensionReason($user),
|
||||
'has2FA' => $user->has2FA(),
|
||||
'applications' => $user->applications()->get()
|
||||
]);
|
||||
}
|
||||
|
||||
@@ -415,6 +420,7 @@ class UserController extends Controller
|
||||
/**
|
||||
* Demote the given user's privileges
|
||||
*
|
||||
* @deprecated This method is being removed in a future version
|
||||
* @param Request $request
|
||||
* @param User $user
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
@@ -467,7 +473,7 @@ class UserController extends Controller
|
||||
|
||||
if (!$suspensionService->isSuspended($user)) {
|
||||
|
||||
$suspensionService->suspend($request->reason, $request->duration, $user, $request->suspensionType);
|
||||
$suspensionService->suspend($user, $request->reason, $user, $request->suspensionType);
|
||||
$request->session()->flash('success', __('Account suspended.'));
|
||||
|
||||
} else {
|
||||
|
@@ -21,6 +21,7 @@
|
||||
|
||||
namespace App\Http\Middleware;
|
||||
|
||||
use App\Services\AccountSuspensionService;
|
||||
use Closure;
|
||||
use Illuminate\Support\Facades\Auth;
|
||||
|
||||
@@ -35,10 +36,10 @@ class ForceLogoutMiddleware
|
||||
*/
|
||||
public function handle($request, Closure $next)
|
||||
{
|
||||
if (Auth::user()->isBanned()) {
|
||||
Auth::logout();
|
||||
|
||||
$request->session()->flash('error', __('Your account is suspended. You will not be able to login or register until the suspension is lifted.'));
|
||||
if ((new AccountSuspensionService())->isSuspended(Auth::user())) {
|
||||
Auth::logout();
|
||||
$request->session()->flash('error', __('Your account is suspended. If you think this was a mistake, please contact an admin.'));
|
||||
|
||||
return redirect('/');
|
||||
}
|
||||
|
Reference in New Issue
Block a user