Viewing File: /home/ubuntu/shop-website-base/app/Http/Controllers/Admin/AdminLoginController.php

<?php

namespace App\Http\Controllers\Admin;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Support\Facades\Auth;

use App\Models\Admin;

class AdminLoginController extends Controller
{
    use AuthenticatesUsers;

    /**
     * Create a new controller instance.
     *
     * @return void
     */
    public function __construct()
    {
        $this->middleware('guest:admin', ['except' => ['logout']]);
    }

    /**
     * Show the application’s login form.
     *
     * @return \Illuminate\Http\Response
     */
    public function showLoginForm()
    {
        return view('admin.auth.login');
    }

    protected function guard() {

        return Auth::guard('admin');

    }
    
    /**
     * Where to redirect users after login.
    *
    * @var string
    */
    protected $redirectTo = '/admin';

    protected $redirectAfterLogout = '/admin/login';


    public function login(Request $request) {

        // Validate the form data
        $this->validate($request, [
            'email'   => 'required|email',
            'password' => 'required|min:6'
         ]);
      
        // Attempt to log the user in
        if (Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password], $request->remember)) {
            if(Auth::guard('admin')->check()) {

                if($admin = Admin::find(Auth::guard('admin')->user()->id)) {

                    $admin->timezone = $request->timezone ?? 'Asia/Kolkata';

                    $admin->save();

                }  

            };

            // if successful, then redirect to their intended location
            return redirect()->intended(route('admin.dashboard'))->with('flash_success',tr('login_success'));
        } 
     
        // if unsuccessful, then redirect back to the login with the form data
     
        return redirect()->back()->withInput($request->only('email', 'remember'))->with('flash_error', tr('email_password_wrong'));
    }

    public function logout() {

        Auth::guard('admin')->logout();
        
        return redirect()->route('admin.login')->with('flash_success',tr('logout_successs'));
    }


}
Back to Directory File Manager