From 69e92d6454af859ba34bec3374d94e2929281dc0 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Thu, 21 Jun 2018 11:08:49 -0500 Subject: [PATCH 1/6] initial pass --- .../Auth/VerificationController.php | 42 +++++++++++++++++++ app/Http/Kernel.php | 1 + 2 files changed, 43 insertions(+) create mode 100644 app/Http/Controllers/Auth/VerificationController.php diff --git a/app/Http/Controllers/Auth/VerificationController.php b/app/Http/Controllers/Auth/VerificationController.php new file mode 100644 index 00000000..b5d8ba33 --- /dev/null +++ b/app/Http/Controllers/Auth/VerificationController.php @@ -0,0 +1,42 @@ +middleware('auth'); + $this->middleware('signed')->only('verify'); + $this->middleware('throttle:6,1')->only('verify', 'resend'); + } +} diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index b1188017..a14153c2 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -58,5 +58,6 @@ class Kernel extends HttpKernel 'can' => \Illuminate\Auth\Middleware\Authorize::class, 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, + 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, ]; } From d6b6e706b183a78336fd87a9a161caee9dee8e77 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Thu, 21 Jun 2018 11:09:58 -0500 Subject: [PATCH 2/6] add event registration --- app/Providers/EventServiceProvider.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index fca6152c..6c64e52b 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -3,6 +3,8 @@ namespace App\Providers; use Illuminate\Support\Facades\Event; +use Illuminate\Auth\Events\Registered; +use Illuminate\Auth\Listeners\SendEmailVerificationNotification; use Illuminate\Foundation\Support\Providers\EventServiceProvider as ServiceProvider; class EventServiceProvider extends ServiceProvider @@ -13,8 +15,8 @@ class EventServiceProvider extends ServiceProvider * @var array */ protected $listen = [ - 'App\Events\Event' => [ - 'App\Listeners\EventListener', + Registered::class => [ + SendEmailVerificationNotification::class, ], ]; From 4957bd5e0ce3dc0c54574b1a717da9b05666b873 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Thu, 21 Jun 2018 11:10:17 -0500 Subject: [PATCH 3/6] stub in import --- app/User.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/User.php b/app/User.php index bfd96a6a..fbc0e589 100644 --- a/app/User.php +++ b/app/User.php @@ -3,6 +3,7 @@ namespace App; use Illuminate\Notifications\Notifiable; +use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Foundation\Auth\User as Authenticatable; class User extends Authenticatable From 592b3936a3bc79bc11b716bec58a582081bdf0c0 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Thu, 21 Jun 2018 11:11:30 -0500 Subject: [PATCH 4/6] update migration --- database/migrations/2014_10_12_000000_create_users_table.php | 1 + 1 file changed, 1 insertion(+) diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/database/migrations/2014_10_12_000000_create_users_table.php index 689cbeea..ec1eace1 100644 --- a/database/migrations/2014_10_12_000000_create_users_table.php +++ b/database/migrations/2014_10_12_000000_create_users_table.php @@ -17,6 +17,7 @@ public function up() $table->increments('id'); $table->string('name'); $table->string('email')->unique(); + $table->boolean('email_verified')->default(false); $table->string('password'); $table->rememberToken(); $table->timestamps(); From cd594395d9c1f86ae343eff5dd0f20fe3f4933b7 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Thu, 21 Jun 2018 11:13:00 -0500 Subject: [PATCH 5/6] add signed --- app/Http/Kernel.php | 1 + 1 file changed, 1 insertion(+) diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index a14153c2..cbfc45fc 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -57,6 +57,7 @@ class Kernel extends HttpKernel 'cache.headers' => \Illuminate\Http\Middleware\SetCacheHeaders::class, 'can' => \Illuminate\Auth\Middleware\Authorize::class, 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, + 'signed' => \Illuminate\Routing\Middleware\ValidateSignature::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class, ]; From 746a9e87a018bfb95f79124e557e5fc703a35ba5 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Thu, 21 Jun 2018 15:32:22 -0500 Subject: [PATCH 6/6] use date --- database/migrations/2014_10_12_000000_create_users_table.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/database/migrations/2014_10_12_000000_create_users_table.php b/database/migrations/2014_10_12_000000_create_users_table.php index ec1eace1..16a61086 100644 --- a/database/migrations/2014_10_12_000000_create_users_table.php +++ b/database/migrations/2014_10_12_000000_create_users_table.php @@ -17,7 +17,7 @@ public function up() $table->increments('id'); $table->string('name'); $table->string('email')->unique(); - $table->boolean('email_verified')->default(false); + $table->timestamp('email_verified_at')->nullable(); $table->string('password'); $table->rememberToken(); $table->timestamps();