123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- <?php
- namespace App\Http\Controllers\Auth;
- use App\Shop\Admins\Requests\LoginRequest;
- use App\Http\Controllers\Controller;
- use Illuminate\Foundation\Auth\AuthenticatesUsers;
- use Illuminate\Http\Request;
- use Illuminate\Support\Facades\Cookie;
- class LoginController extends Controller
- {
-
- use AuthenticatesUsers;
-
- protected $redirectTo = '/accounts?tab=profile';
-
- public function __construct()
- {
- $this->middleware('guest')->except('logout');
- }
- public function showLoginForm()
- {
- return view('auth.login');
- }
-
- public function login(LoginRequest $request)
- {
- $this->validateLogin($request);
- if ($this->hasTooManyLoginAttempts($request)) {
- $this->fireLockoutEvent($request);
- return $this->sendLockoutResponse($request);
- }
- $credentials = $request->only('email', 'password');
- if ($token = auth()->login($credentials)) {
- $this->clearLoginAttempts($request);
- return redirect()->route('accounts')->cookie('jwt_token', $token);
- }
- $this->incrementLoginAttempts($request);
- return $this->sendFailedLoginResponse($request);
- }
-
- public function logout(Request $request)
- {
- $this->guard()->logout();
-
- Cookie::queue(Cookie::forget('jwt_token'));
- return $this->loggedOut($request) ?: redirect('/');
- }
- }
|