From 78d82c7c2cea7a950dd87961f18b39d45d6f4edb Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Sat, 24 Sep 2022 22:31:17 -0600 Subject: [PATCH] Update v1.1 api --- .../Controllers/Api/ApiV1Dot1Controller.php | 32 ++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/Api/ApiV1Dot1Controller.php b/app/Http/Controllers/Api/ApiV1Dot1Controller.php index 429c9211..3971997c 100644 --- a/app/Http/Controllers/Api/ApiV1Dot1Controller.php +++ b/app/Http/Controllers/Api/ApiV1Dot1Controller.php @@ -18,6 +18,8 @@ use App\Services\AccountService; use App\Services\StatusService; use App\Services\ProfileStatusService; use Jenssegers\Agent\Agent; +use Mail; +use App\Mail\PasswordChange; class ApiV1Dot1Controller extends Controller { @@ -231,6 +233,19 @@ class ApiV1Dot1Controller extends Controller $user->password = bcrypt($request->input('new_password')); $user->save(); + $log = new AccountLog; + $log->user_id = $user->id; + $log->item_id = $user->id; + $log->item_type = 'App\User'; + $log->action = 'account.edit.password'; + $log->message = 'Password changed'; + $log->link = null; + $log->ip_address = $request->ip(); + $log->user_agent = $request->userAgent(); + $log->save(); + + Mail::to($request->user())->send(new PasswordChange($user)); + return $this->json(AccountService::get($user->profile_id)); } @@ -324,9 +339,24 @@ class ApiV1Dot1Controller extends Controller }) ->toArray(); + $passwordChanges = AccountLog::whereUserId($user->id) + ->whereAction('account.edit.password') + ->where('created_at', '>', now()->subDays(14)) + ->orderByDesc('created_at') + ->limit(10) + ->get() + ->map(function($mail) { + return [ + 'type' => 'Password Change', + 'created_at' => $mail->created_at + ]; + }) + ->toArray(); + $res = [ 'email_verifications' => $emailVerifications, - 'password_resets' => $passwordResets + 'password_resets' => $passwordResets, + 'password_changes' => $passwordChanges ]; return $this->json($res);