This repository was archived by the owner on Nov 26, 2024. It is now read-only.
File tree Expand file tree Collapse file tree 4 files changed +56
-19
lines changed
Expand file tree Collapse file tree 4 files changed +56
-19
lines changed Original file line number Diff line number Diff line change 1+ <?php
2+
3+ namespace App \Http \Controllers \Api \Auth ;
4+
5+ use App \Http \Controllers \Controller ;
6+ use Illuminate \Foundation \Auth \SendsPasswordResetEmails ;
7+ use Illuminate \Http \Request ;
8+ use Illuminate \Support \Facades \Password ;
9+
10+ class ForgotPasswordController extends Controller
11+ {
12+ use SendsPasswordResetEmails;
13+
14+ /**
15+ * Create a new controller instance.
16+ */
17+ public function __construct ()
18+ {
19+ $ this ->middleware ('guest ' );
20+ }
21+
22+ public function __invoke (Request $ request )
23+ {
24+ $ this ->validateEmail ($ request );
25+
26+ // We will send the password reset link to this user. Once we have attempted
27+ // to send the link, we will examine the response then see the message we
28+ // need to show to the user. Finally, we'll send out a proper response.
29+ $ response = $ this ->broker ()->sendResetLink (
30+ $ request ->only ('email ' )
31+ );
32+
33+ return Password::RESET_LINK_SENT == $ response
34+ ? response ()->api ([], 'Reset link sent to your email. ' )
35+ : response ()->api ([], 'Unable to send reset link ' );
36+ }
37+ }
Original file line number Diff line number Diff line change 88
99class LogoutController extends Controller
1010{
11- public function __invoke (Request $ request )
12- {
13- JWTAuth::invalidate (JWTAuth::getToken ());
11+ public function __invoke (Request $ request )
12+ {
13+ JWTAuth::invalidate (JWTAuth::getToken ());
1414
15- return response ()->api ([], 'You have sucessfully logout. ' );
16- }
15+ return response ()->api ([], 'You have sucessfully logout. ' );
16+ }
1717}
Original file line number Diff line number Diff line change 22
33namespace App \Http \Controllers \Api \User ;
44
5- use Illuminate \Http \Request ;
65use App \Http \Controllers \Controller ;
6+ use Illuminate \Http \Request ;
77
88class ProfileController extends Controller
99{
@@ -14,18 +14,17 @@ class ProfileController extends Controller
1414 */
1515 public function index ()
1616 {
17- //
1817 }
1918
2019 /**
2120 * Store a newly created resource in storage.
2221 *
23- * @param \Illuminate\Http\Request $request
22+ * @param \Illuminate\Http\Request $request
23+ *
2424 * @return \Illuminate\Http\Response
2525 */
2626 public function store (Request $ request )
2727 {
28- //
2928 }
3029
3130 /**
@@ -41,23 +40,23 @@ public function show()
4140 /**
4241 * Update the specified resource in storage.
4342 *
44- * @param \Illuminate\Http\Request $request
45- * @param int $id
43+ * @param \Illuminate\Http\Request $request
44+ * @param int $id
45+ *
4646 * @return \Illuminate\Http\Response
4747 */
4848 public function update (Request $ request , $ id )
4949 {
50- //
5150 }
5251
5352 /**
5453 * Remove the specified resource from storage.
5554 *
56- * @param int $id
55+ * @param int $id
56+ *
5757 * @return \Illuminate\Http\Response
5858 */
5959 public function destroy ($ id )
6060 {
61- //
6261 }
6362}
Original file line number Diff line number Diff line change 1919 Route::post ('login ' , 'LoginController ' )->name ('login ' );
2020 Route::post ('logout ' , 'LogoutController ' )->name ('logout ' );
2121 Route::post ('register ' , 'RegisterController ' )->name ('register ' );
22+ Route::post ('forgot/password ' , 'ForgotPasswordController ' )->name ('forgot.password ' );
2223});
2324
2425Route::group ([
25- 'namespace ' => 'User ' ,
26- 'prefix ' => 'user ' ,
27- 'as ' => 'user. ' ,
28- 'middleware ' => ['jwt.auth ' ]
26+ 'namespace ' => 'User ' ,
27+ 'prefix ' => 'user ' ,
28+ 'as ' => 'user. ' ,
29+ 'middleware ' => ['jwt.auth ' ],
2930], function () {
3031 Route::get ('profile ' , 'ProfileController@show ' )->name ('profile.show ' );
3132});
3233
33- /**
34+ /*
3435 * @todo protect routes, allow for self-consume API
3536 */
3637Route::group ([
You can’t perform that action at this time.
0 commit comments