From bde671657fe218795e4e5de8d3724a4fd7dc90d8 Mon Sep 17 00:00:00 2001 From: Daniel Supernault Date: Mon, 20 Aug 2018 20:33:07 -0600 Subject: [PATCH] Update SettingsController, fix bug that prevented instances without email validation to update settings --- app/Http/Controllers/SettingsController.php | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/app/Http/Controllers/SettingsController.php b/app/Http/Controllers/SettingsController.php index 95859efa7..0c706184e 100644 --- a/app/Http/Controllers/SettingsController.php +++ b/app/Http/Controllers/SettingsController.php @@ -44,29 +44,33 @@ class SettingsController extends Controller $user = Auth::user(); $profile = $user->profile; + $validate = config('pixelfed.enforce_email_verification'); if($user->email != $email) { $changes = true; $user->email = $email; - $user->email_verified_at = null; - // Prevent old verifications from working - EmailVerification::whereUserId($user->id)->delete(); + + if($validate) { + $user->email_verified_at = null; + // Prevent old verifications from working + EmailVerification::whereUserId($user->id)->delete(); + } } // Only allow email to be updated if not yet verified - if(!$changes && $user->email_verified_at) { + if(!$validate || !$changes && $user->email_verified_at) { if($profile->name != $name) { $changes = true; $user->name = $name; $profile->name = $name; } - if($profile->website != $website) { + if(!$profile->website || $profile->website != $website) { $changes = true; $profile->website = $website; } - if($profile->bio != $bio) { + if(!$profile->bio || !$profile->bio != $bio) { $changes = true; $profile->bio = $bio; }