I'm creating a reset password with the help of the internet I'm able to make it function, but it needs to input an email address in the email field. I want to hide the email field and only the password field need to input. How can i do that?
My ForgotPasswordController
class ForgotPasswordController extends Controller
{
public function getEmail()
{
return view('auth.passwords.email');
}
public function postEmail(Request $request)
{
$request->validate([
'email' => 'required|email|exists:users',
]);
$token = Str::random(60);
DB::table('password_resets')->insert(
['email' => $request->email, 'token' => $token, 'created_at' => Carbon::now()]
);
Mail::send('auth.verify',['token' => $token], function($message) use ($request) {
$message->from('noreply@taskproph.com');
$message->to($request->email);
$message->subject('Reset Password Notification');
});
Toastr::success('We have e-mailed your password reset link! :)','Success');
return back();
}
}
My ResetPasswordController
class ResetPasswordController extends Controller
{
public function getPassword($token)
{
return view('auth.passwords.reset', ['token' => $token]);
}
public function updatePassword(Request $request)
{
$request->validate([
'email' => 'required|email|exists:users',
'password' => 'required|string|min:6|confirmed',
'password_confirmation' => 'required',
]);
$updatePassword = DB::table('password_resets')->where(['email' => $request->email, 'token' => $request->token])->first();
if(!$updatePassword)
{
Toastr::error('Invalid token! :)','Error');
return back();
}else{
$user = User::where('email', $request->email)->update(['password' => Hash::make($request->password)]);
DB::table('password_resets')->where(['email' => $request->email ])-> delete();
Toastr::success('Your Password has been changed! :)','Success');
return redirect('/login');
}
}
}