2
2
3
3
namespace App \Http \Controllers \Auth ;
4
4
5
+ use Cookie ;
6
+ use Illuminate \Http \Request ;
5
7
use App \Http \Controllers \Controller ;
6
8
use Illuminate \Foundation \Auth \AuthenticatesUsers ;
7
9
8
10
class LoginController extends Controller
9
11
{
10
- /*
11
- |--------------------------------------------------------------------------
12
- | Login Controller
13
- |--------------------------------------------------------------------------
14
- |
15
- | This controller handles authenticating users for the application and
16
- | redirecting them to your home screen. The controller uses a trait
17
- | to conveniently provide its functionality to your applications.
18
- |
19
- */
20
-
21
12
use AuthenticatesUsers;
22
13
23
- /**
24
- * Where to redirect users after login.
25
- *
26
- * @var string
27
- */
28
- protected $ redirectTo = '/home ' ;
29
-
30
14
/**
31
15
* Create a new controller instance.
32
16
*
@@ -36,4 +20,67 @@ public function __construct()
36
20
{
37
21
$ this ->middleware ('guest ' )->except ('logout ' );
38
22
}
23
+
24
+ /**
25
+ * Attempt to log the user into the application.
26
+ *
27
+ * @param \Illuminate\Http\Request $request
28
+ * @return bool
29
+ */
30
+ protected function attemptLogin (Request $ request )
31
+ {
32
+ $ token = $ this ->guard ()->attempt ($ this ->credentials ($ request ));
33
+
34
+ if ($ token ) {
35
+ $ this ->guard ()->setToken ($ token );
36
+
37
+ return true ;
38
+ }
39
+
40
+ return false ;
41
+ }
42
+
43
+ /**
44
+ * Get the needed authorization credentials from the request.
45
+ *
46
+ * @param \Illuminate\Http\Request $request
47
+ * @return array
48
+ */
49
+ protected function credentials (Request $ request )
50
+ {
51
+ return array_merge (
52
+ $ request ->only ($ this ->username (), 'password ' ),
53
+ ['role ' => 'admin ' ]
54
+ );
55
+ }
56
+
57
+ /**
58
+ * Send the response after the user was authenticated.
59
+ *
60
+ * @param \Illuminate\Http\Request $request
61
+ * @return \Illuminate\Http\Response
62
+ */
63
+ protected function sendLoginResponse (Request $ request )
64
+ {
65
+ $ this ->clearLoginAttempts ($ request );
66
+
67
+ $ token = (string ) $ this ->guard ()->getToken ();
68
+ $ expiration = $ this ->guard ()->getPayload ()->get ('exp ' );
69
+
70
+ return [
71
+ 'token ' => $ token ,
72
+ 'user ' => $ this ->guard ()->user (),
73
+ ];
74
+ }
75
+
76
+ /**
77
+ * Log the user out of the application.
78
+ *
79
+ * @param \Illuminate\Http\Request $request
80
+ * @return \Illuminate\Http\Response
81
+ */
82
+ public function logout (Request $ request )
83
+ {
84
+ return $ this ->guard ()->logout ();
85
+ }
39
86
}
0 commit comments