diff --git a/app/Classes/Modules/ControllersLogic/Accounts/ForgotAccountLogic.php b/app/Classes/Modules/ControllersLogic/Accounts/ForgotAccountLogic.php new file mode 100644 index 0000000..b71e334 --- /dev/null +++ b/app/Classes/Modules/ControllersLogic/Accounts/ForgotAccountLogic.php @@ -0,0 +1,62 @@ +createUserInvitation = $createUserInvitation; + $this->canSendAccountInvitation = $canSendAccountInvitation; + } + + + /** + * @param Request $request + * @return JsonResponse + * @throws InternalServerErrorException + */ + public function execute(Request $request) { + + try { + + $object = new UserInvitationObject($request->get('role_id'), $request->get('email')); + + if($this->canSendAccountInvitation->execute($object)){ + + + $invitation = $this->createUserInvitation->execute($object); + + event(new UserInvited($invitation)); + + return new JsonResponse("Invitation have been sent!", HttpStatus::RESOURCE_CREATED); + } + + } catch (ResourceConflictException $exception) { + throw new InternalServerErrorException("Failed to send user invitation because {$exception->getMessage()}"); + } + } +} \ No newline at end of file diff --git a/app/Http/Controllers/Account/ForgotAccountController.php b/app/Http/Controllers/Account/ForgotAccountController.php new file mode 100644 index 0000000..7f8cddb --- /dev/null +++ b/app/Http/Controllers/Account/ForgotAccountController.php @@ -0,0 +1,50 @@ +execute($request); +// } +//} + + +namespace App\Http\Controllers\Account; + +use Illuminate\Support\Facades\Mail; +use Illuminate\Http\Request; +use App\Http\Controllers\Controller; + +class ForgotAccountController extends Controller +{ + /** + * Send an e-mail reminder to the user. + * + * @param Request $request + * @param int $id + * @return Response + */ + public function forgot() + { + + Mail::send('emails.reminder', ['user' => "ahmad"], function ($m) { + $m->from('2f114cfc66-6c1272@inbox.mailtrap.io', 'Your Application'); + + $m->to("2f114cfc66-6c1272@inbox.mailtrap.io", "ahmad")->subject('Your Reminder!'); + }); + } +} \ No newline at end of file diff --git a/app/Http/Controllers/Auth/ForgotPasswordController.php b/app/Http/Controllers/Auth/ForgotPasswordController.php index 38e126f..46cbf98 100644 --- a/app/Http/Controllers/Auth/ForgotPasswordController.php +++ b/app/Http/Controllers/Auth/ForgotPasswordController.php @@ -28,4 +28,9 @@ class ForgotPasswordController extends Controller { $this->middleware('guest'); } + + public function showForgotForm() + { + return view('pages.authentication.forgot'); + } } diff --git a/resources/views/pages/authentication/forgot.blade.php b/resources/views/pages/authentication/forgot.blade.php new file mode 100644 index 0000000..1c71992 --- /dev/null +++ b/resources/views/pages/authentication/forgot.blade.php @@ -0,0 +1,55 @@ +@extends('layouts.base') + +@section('content') +
Reset it using your credentials
+