Esta es la solución más correcta que encomtrarás aportar, pero primero mírala detenidamente y analiza si es compatible a tu trabajo.
Solución:
Tenga esto en su LoginController:
protected function credentials(Request $request)
return ['username' => $request->$this->username(), 'password' => $request->password, 'status' => 1];
Simplemente toma el estado del usuario y verifica que el estado del usuario sea true o false. Puede tomar el estado usando Auth::User()->status de la sesión de autenticación. Prueba esto.
if(Auth::attempt(['email'=>$request->email,'password'=>$request->password]))
$userStatus = Auth::User()->status;
if($userStatus=='1')
return redirect()->intended(url('/dashboard'));
else
Auth::logout();
Session::flush();
return redirect(url('login'))->withInput()->with('errorMsg','You are temporary blocked. please contact to admin');
else
return redirect(url('login'))->withInput()->with('errorMsg','Incorrect username or password. Please try again.');
Simplemente ponga este código en su AppAuthLoginController
o en otro lugar donde tenga su LoginController
situado.
public function authenticate(Request $request)
$credentials = $request->only('email', 'password');
if (Auth::attempt(['email' => $email, 'password' => $password, 'active' => 1]))
// Authentication passed...
return redirect()->intended('dashboard');
con este código estás anulando el valor predeterminado authenticate
función
Eres capaz de añadir valor a nuestra información dando tu experiencia en las crónicas.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)