File size: 2,004 Bytes
40dca3b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?php

namespace App\Http\Controllers\Auth;

use App\Http\Controllers\BaseController;

use App\Http\Requests\LoginRequest;
use Illuminate\Support\Facades\Auth;
use Illuminate\Http\Request;
use App\Http\Controllers\WebControllers\V1\Backend\LandingController;
use Illuminate\Foundation\Auth\AuthenticatesUsers;

class LoginController extends BaseController
{
    /*
    |--------------------------------------------------------------------------
    | Login Controller
    |--------------------------------------------------------------------------
    |
    | This controller handles authenticating users for the application and
    | redirecting them to your home screen. The controller uses a trait
    | to conveniently provide its functionality to your applications.
    |
    */


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

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

    public function logout(){
        auth()->logout();
        return view('Backend.auth.login');
    }

    public function getLogin()
    {
        if (Auth::guard()->check()) {
            return back();
        }
        return view('Backend.auth.login');
    }

    public function login(LoginRequest $request)
    {

        $remember = $request->get('remember');

        $data = $request->only([
            'email',
            'password',
        ]);

        if (Auth::attempt(
            [
                'email' => $data['email'],
                'password' => $data['password'],
            ], $remember)
        ) {

            return redirect()->intended(action([LandingController::class,'index']));
        }
        return redirect()
            ->action('Auth\LoginController@getLogin')
            ->with('msg_fail', trans('auth.failed'));
    }
}