diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php index 25be84066..4525bfd73 100644 --- a/app/Http/Controllers/Auth/ForgotPasswordController.php +++ b/app/Http/Controllers/Auth/ForgotPasswordController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers\Auth; +use App\Http\Requests\Auth\ShowLinkRequestFormForgotPasswordRequest; use App\Http\Controllers\Controller; use App\Jobs\SendPasswordForgottenEmail; use App\Models\Settings; @@ -38,7 +39,7 @@ class ForgotPasswordController extends Controller /** * @throws \Exception */ - public function showLinkRequestForm(Request $request): void + public function showLinkRequestForm(ShowLinkRequestFormForgotPasswordRequest $request): void { $sent = ''; $email = request()->input('email') ?? ''; @@ -47,9 +48,6 @@ class ForgotPasswordController extends Controller app('smarty.view')->assign('error', 'Missing parameter(email and/or apikey to send password reset'); } else { if (config('captcha.enabled') === true && (! empty(config('captcha.secret')) && ! empty(config('captcha.sitekey')))) { - $this->validate($request, [ - 'g-recaptcha-response' => 'required|captcha', - ]); } // // Check users exists and send an email diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index c59d49f29..ca13c1a31 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers\Auth; +use App\Http\Requests\Auth\LoginLoginRequest; use App\Events\UserLoggedIn; use App\Http\Controllers\Controller; use App\Models\Settings; @@ -53,7 +54,7 @@ class LoginController extends Controller * @throws \Illuminate\Auth\AuthenticationException * @throws \Illuminate\Validation\ValidationException */ - public function login(Request $request) + public function login(LoginLoginRequest $request) { $validator = Validator::make($request->all(), [ 'username' => ['required'], @@ -81,9 +82,6 @@ class LoginController extends Controller if ($user !== null) { if (config('captcha.enabled') === true && (! empty(config('captcha.secret')) && ! empty(config('captcha.sitekey')))) { - $this->validate($request, [ - 'g-recaptcha-response' => ['required', 'captcha'], - ]); } $rememberMe = $request->has('rememberme') && $request->input('rememberme') === 'on'; diff --git a/app/Http/Controllers/Auth/RegisterController.php b/app/Http/Controllers/Auth/RegisterController.php index 8269c52c1..a33c3f782 100644 --- a/app/Http/Controllers/Auth/RegisterController.php +++ b/app/Http/Controllers/Auth/RegisterController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers\Auth; +use App\Http\Requests\Auth\RegisterRegisterRequest; use App\Http\Controllers\Controller; use App\Models\Invitation; use App\Models\Settings; @@ -112,7 +113,7 @@ class RegisterController extends Controller * * @throws ValidationException */ - public function register(Request $request) + public function register(RegisterRegisterRequest $request) { $error = $userName = $password = $confirmPassword = $email = $inviteCode = ''; $showRegister = 1; @@ -129,9 +130,6 @@ class RegisterController extends Controller ]); if (config('captcha.enabled') === true && (! empty(config('captcha.secret')) && ! empty(config('captcha.sitekey')))) { - $this->validate($request, [ - 'g-recaptcha-response' => ['required', 'captcha'], - ]); } if ($validator->fails()) { diff --git a/app/Http/Controllers/ContactUsController.php b/app/Http/Controllers/ContactUsController.php index 4b63e17e5..0f8de8606 100644 --- a/app/Http/Controllers/ContactUsController.php +++ b/app/Http/Controllers/ContactUsController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Http\Requests\ContactContactURequest; use App\Jobs\SendContactUsEmail; use Illuminate\Http\Request; @@ -10,13 +11,9 @@ class ContactUsController extends BasePageController /** * @throws \Illuminate\Validation\ValidationException */ - public function contact(Request $request): \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse|null + public function contact(ContactContactURequest $request): \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse|null { $this->setPreferences(); - $this->validate($request, [ - 'useremail' => 'required', - 'username' => 'required', - ]); if (config('captcha.enabled') === true && (! empty(config('captcha.secret')) && ! empty(config('captcha.sitekey')))) { $this->validate($request, [ diff --git a/app/Http/Controllers/PasswordSecurityController.php b/app/Http/Controllers/PasswordSecurityController.php index 46e8f9c62..8da151650 100644 --- a/app/Http/Controllers/PasswordSecurityController.php +++ b/app/Http/Controllers/PasswordSecurityController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Http\Requests\Disable2faPasswordSecurityRequest; use App\Models\PasswordSecurity; use Illuminate\Http\Request; use Illuminate\Support\Facades\Auth; @@ -70,16 +71,14 @@ class PasswordSecurityController extends Controller return redirect('2fa')->with('error', 'Invalid Verification Code, Please try again.'); } - public function disable2fa(Request $request): \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse|\Illuminate\Contracts\Foundation\Application + public function disable2fa(Disable2faPasswordSecurityRequest $request): \Illuminate\Routing\Redirector|\Illuminate\Http\RedirectResponse|\Illuminate\Contracts\Foundation\Application { if (! (Hash::check($request->get('current-password'), Auth::user()->password))) { // The passwords matches return redirect()->back()->with('error', 'Your password does not match with your account password. Please try again.'); } - $validatedData = $request->validate([ - 'current-password' => 'required', - ]); + $validatedData = $request->validated(); $user = Auth::user(); $user->passwordSecurity->google2fa_enable = 0; $user->passwordSecurity->save(); diff --git a/app/Http/Requests/Auth/LoginLoginRequest.php b/app/Http/Requests/Auth/LoginLoginRequest.php new file mode 100644 index 000000000..0f6dfd9ee --- /dev/null +++ b/app/Http/Requests/Auth/LoginLoginRequest.php @@ -0,0 +1,23 @@ + [ +'required', +'captcha', +], +]; + } +} diff --git a/app/Http/Requests/Auth/RegisterRegisterRequest.php b/app/Http/Requests/Auth/RegisterRegisterRequest.php new file mode 100644 index 000000000..f6c29b3c6 --- /dev/null +++ b/app/Http/Requests/Auth/RegisterRegisterRequest.php @@ -0,0 +1,23 @@ + [ +'required', +'captcha', +], +]; + } +} diff --git a/app/Http/Requests/Auth/ShowLinkRequestFormForgotPasswordRequest.php b/app/Http/Requests/Auth/ShowLinkRequestFormForgotPasswordRequest.php new file mode 100644 index 000000000..4aaccdad1 --- /dev/null +++ b/app/Http/Requests/Auth/ShowLinkRequestFormForgotPasswordRequest.php @@ -0,0 +1,18 @@ + 'required|captcha']; + } +} diff --git a/app/Http/Requests/ContactContactURequest.php b/app/Http/Requests/ContactContactURequest.php new file mode 100644 index 000000000..764eb2efc --- /dev/null +++ b/app/Http/Requests/ContactContactURequest.php @@ -0,0 +1,18 @@ + 'required|captcha']; + } +} diff --git a/app/Http/Requests/Disable2faPasswordSecurityRequest.php b/app/Http/Requests/Disable2faPasswordSecurityRequest.php new file mode 100644 index 000000000..ae113152e --- /dev/null +++ b/app/Http/Requests/Disable2faPasswordSecurityRequest.php @@ -0,0 +1,18 @@ + 'required']; + } +}