From 9584ed53f6ded03e8587c5511d96cd3b72307489 Mon Sep 17 00:00:00 2001 From: soufiane Date: Mon, 12 Jun 2023 18:24:08 +0200 Subject: [PATCH] =?utf8?q?wip=20#5788=20@3:30=20mot=20de=20passe=20oubli?= =?utf8?q?=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- app/Http/Controllers/AjaxController.php | 15 +++++- app/Http/Controllers/ClientForgotPassword.php | 52 +++++++++++++++++++ app/Models/Client.php | 1 + app/Templates/ChangePassword.php | 18 +++++++ app/Templates/ForgotPassword.php | 18 +++++++ resources/js/app.js | 4 -- .../views/pages/forgot_password.blade.php | 38 ++++++++++++++ routes/web.php | 4 +- 8 files changed, 143 insertions(+), 7 deletions(-) create mode 100644 app/Http/Controllers/ClientForgotPassword.php create mode 100644 app/Templates/ChangePassword.php create mode 100644 app/Templates/ForgotPassword.php create mode 100644 resources/views/pages/forgot_password.blade.php diff --git a/app/Http/Controllers/AjaxController.php b/app/Http/Controllers/AjaxController.php index 14e164b..91670fe 100644 --- a/app/Http/Controllers/AjaxController.php +++ b/app/Http/Controllers/AjaxController.php @@ -3,7 +3,6 @@ namespace App\Http\Controllers; use App\Models\Command; -use App\Models\CommandPanierSchema; use App\Models\Panier; use Cubist\Backpack\Facades\App; use App\Models\Page; @@ -23,7 +22,7 @@ use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Validator; use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Auth; -use Illuminate\Support\Arr; +use Illuminate\Support\Facades\Password; class AjaxController extends CubistFrontController { @@ -434,6 +433,18 @@ class AjaxController extends CubistFrontController return $data; } + public function forgotPassword(Request $request) { + $request->validate(['email' => 'required|email']); + + $status = Password::sendResetLink( + $request->only('email') + ); + + return $status === Password::RESET_LINK_SENT + ? back()->with(['status' => __($status)]) + : back()->withErrors(['email' => __($status)]); + } + public function update(Request $request) { $validation = []; foreach ($request->all() as $key => $field){ diff --git a/app/Http/Controllers/ClientForgotPassword.php b/app/Http/Controllers/ClientForgotPassword.php new file mode 100644 index 0000000..5ebfc52 --- /dev/null +++ b/app/Http/Controllers/ClientForgotPassword.php @@ -0,0 +1,52 @@ +validate(['email' => 'required|email']); + + $email = $request->only('email'); + $contents = ""; + + $client = Client::where('email', $email['email'])->first(); + + $token = Password::createToken($client); + + dd($token); + + Mail::raw($contents, function ($message) use($email) { + $message->from(config('mail.from.address'), config('mail.from.name')); + $message->sender(config('mail.from.address'), config('mail.from.name')); + $message->to($email); + $message->bcc('test+pmi@cubedesigners.com'); + $message->subject("Mise à jour"); + }); + + return $status === Password::RESET_LINK_SENT + ? back()->with(['status' => __($status)]) + : back()->withErrors(['email' => __($status)]); + } +} diff --git a/app/Models/Client.php b/app/Models/Client.php index 34b5960..f5a186c 100644 --- a/app/Models/Client.php +++ b/app/Models/Client.php @@ -3,6 +3,7 @@ namespace App\Models; use Cubist\Backpack\app\Magic\Models\CubistMagicAbstractModel; use Illuminate\Support\Facades\Auth; +use Illuminate\Notifications\Notifiable; class Client extends CubistMagicAbstractModel { diff --git a/app/Templates/ChangePassword.php b/app/Templates/ChangePassword.php new file mode 100644 index 0000000..8ad5d47 --- /dev/null +++ b/app/Templates/ChangePassword.php @@ -0,0 +1,18 @@ + { diff --git a/resources/views/pages/forgot_password.blade.php b/resources/views/pages/forgot_password.blade.php new file mode 100644 index 0000000..8bf7622 --- /dev/null +++ b/resources/views/pages/forgot_password.blade.php @@ -0,0 +1,38 @@ +@extends('layouts/app') + +@section('content') +
+ +
+@endsection diff --git a/routes/web.php b/routes/web.php index d0fe4d9..7a81c27 100644 --- a/routes/web.php +++ b/routes/web.php @@ -1,10 +1,12 @@ where( - ['page' => '\b(se-connecter|mon-compte|paniers-enregistres)\b'] + ['page' => '\b(se-connecter|mon-compte|paniers-enregistres|mes-commandes)\b'] )->name('client')->middleware('client'); Route::any('{page}/{subs?}', 'PageController@catchall') -- 2.39.5