From 2ff5204549ef3b4ade66538bf0763906f7a792ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=90=D0=BB=D0=B5=D0=BA=D1=81=D0=B0=D0=BD=D0=B4=D1=80=20?= =?UTF-8?q?=D0=91=D0=B0=D0=B1=D0=BA=D0=B8=D0=BD?= Date: Fri, 24 Jun 2022 09:00:38 +0300 Subject: [PATCH] admin users begin --- app/Http/Controllers/UserController.php | 84 +++++++++++++++++++ app/Http/Kernel.php | 1 + app/Http/Middleware/IsAdmin.php | 26 ++++++ app/Http/Requests/Auth/LoginRequest.php | 15 +++- resources/lang/ru.json | 3 +- resources/views/auth/login.blade.php | 9 +- .../components/application-logo.blade.php | 17 +++- 7 files changed, 148 insertions(+), 7 deletions(-) create mode 100644 app/Http/Controllers/UserController.php create mode 100644 app/Http/Middleware/IsAdmin.php diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php new file mode 100644 index 0000000..7889d78 --- /dev/null +++ b/app/Http/Controllers/UserController.php @@ -0,0 +1,84 @@ + \Illuminate\Routing\Middleware\ValidateSignature::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, + 'admin' => \App\Http\Middleware\IsAdmin::class, ]; } diff --git a/app/Http/Middleware/IsAdmin.php b/app/Http/Middleware/IsAdmin.php new file mode 100644 index 0000000..0677f37 --- /dev/null +++ b/app/Http/Middleware/IsAdmin.php @@ -0,0 +1,26 @@ +is_admin == true) { + return $next($request); + } + + return redirect('/')->with('error', 'You have not admin access'); + } +} diff --git a/app/Http/Requests/Auth/LoginRequest.php b/app/Http/Requests/Auth/LoginRequest.php index 940a2d4..3105eae 100644 --- a/app/Http/Requests/Auth/LoginRequest.php +++ b/app/Http/Requests/Auth/LoginRequest.php @@ -29,7 +29,8 @@ class LoginRequest extends FormRequest public function rules() { return [ - 'email' => ['required', 'string', 'email'], + // 'email' => ['required', 'string', 'email'], + 'username' => ['required', 'string'], 'password' => ['required', 'string'], ]; } @@ -45,11 +46,19 @@ class LoginRequest extends FormRequest { $this->ensureIsNotRateLimited(); - if (! Auth::attempt($this->only('email', 'password'), $this->boolean('remember'))) { + // if (! Auth::attempt($this->only('email', 'password'), $this->boolean('remember'))) { + // RateLimiter::hit($this->throttleKey()); + + // throw ValidationException::withMessages([ + // 'email' => trans('auth.failed'), + // ]); + // } + + if (! Auth::attempt($this->only('username', 'password'), $this->boolean('remember'))) { RateLimiter::hit($this->throttleKey()); throw ValidationException::withMessages([ - 'email' => trans('auth.failed'), + 'username' => trans('auth.failed'), ]); } diff --git a/resources/lang/ru.json b/resources/lang/ru.json index f427724..1442c6c 100644 --- a/resources/lang/ru.json +++ b/resources/lang/ru.json @@ -747,5 +747,6 @@ "Zambia": "Замбия", "Zimbabwe": "Зимбабве", "Zip / Postal Code": "Индекс", - "Åland Islands": "Аландские острова" + "Åland Islands": "Аландские острова", + "User name": "Имя пользователя" } \ No newline at end of file diff --git a/resources/views/auth/login.blade.php b/resources/views/auth/login.blade.php index ecbe174..543fd26 100644 --- a/resources/views/auth/login.blade.php +++ b/resources/views/auth/login.blade.php @@ -16,10 +16,17 @@ @csrf -
+ + + +
+ + +
diff --git a/resources/views/components/application-logo.blade.php b/resources/views/components/application-logo.blade.php index 46579cf..26beea8 100644 --- a/resources/views/components/application-logo.blade.php +++ b/resources/views/components/application-logo.blade.php @@ -1,3 +1,16 @@ - + + + + + + + + + \ No newline at end of file