/** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { if (PassReset::find($request->id)) { return $next($request); } return redirect()->route('showLogin'); }
/** * Funcionalidad cuando el usuario pierde la contrasena * * @param App\Http\Requests * * @return route */ public function forgotpassword(Request $request) { $password = PasswordGenerator::generate(); PassReset::create(['email' => $request->email, 'password' => $password['hashed']]); //MODIFICAR EMAIL EmailSender::sendResetPassInfro($password['plain'], $request->email); return redirect()->route('showLogin'); //MOSTRAR ALGUN AVISO? }
/** * Almacena el usuario en la base de datos. * La informacion es validad en el request. * La contrasena es generada y guardada en la table 'pasword_resets' * * @param App\Http\Requests\UsuarioRequest; * @return view users.index */ public function store(UsuarioRequest $request) { $user = User::create($request->all()); $user->username = Usernamegenerator::generate($request); $user->save(); $password = PasswordGenerator::generate(); PassReset::create(['email' => $user->email, 'password' => $password['hashed']]); EmailSender::sendUserInfo($password['plain'], $user); return redirect()->route('users.index'); }
/** * Revisa si la clave que se ingreso se encuentra en la tabla 'password_reset' * y que es valido con su respectivo email * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { $email = $request->email; $passReset = PassReset::where('email', $email); if ($passReset->count() > 0) { $storedPass = $passReset->first()->password; if (Hash::check($request->password, $storedPass)) { return redirect()->route('passreset.index', $passReset->first()->id); } } return $next($request); }
/** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { if ($passResetInfo = PassReset::find($request->id)) { $oldPass = $request->old_password; //Desde el form $newPass = $request->new_password; //Desde el form $storedPass = $passResetInfo->password; //Desde la BD if (Hash::check($oldPass, $storedPass)) { return $next($request); } } return back()->withErrors('true'); }