DefaultRecipientController.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Http\Requests\EditDefaultRecipientRequest;
  4. use App\Http\Requests\UpdateDefaultRecipientRequest;
  5. use App\Notifications\DefaultRecipientUpdated;
  6. class DefaultRecipientController extends Controller
  7. {
  8. /**
  9. * Create a new controller instance.
  10. *
  11. * @return void
  12. */
  13. public function __construct()
  14. {
  15. $this->middleware('throttle:1,1')->only('edit');
  16. $this->middleware('throttle:3,1')->only('update');
  17. }
  18. public function update(UpdateDefaultRecipientRequest $request)
  19. {
  20. $recipient = user()->verifiedRecipients()->findOrFail($request->default_recipient);
  21. $currentDefaultRecipient = user()->defaultRecipient;
  22. user()->default_recipient = $recipient;
  23. user()->save();
  24. $currentDefaultRecipient->notify(new DefaultRecipientUpdated($recipient->email));
  25. return back()->with(['status' => 'Default Recipient Updated Successfully']);
  26. }
  27. public function edit(EditDefaultRecipientRequest $request)
  28. {
  29. $recipient = user()->defaultRecipient;
  30. $recipient->email = $request->email;
  31. $recipient->save();
  32. user()->sendEmailVerificationNotification();
  33. return back()->with(['status' => 'Email Updated Successfully, Please Check Your Inbox For The Verification Email']);
  34. }
  35. }