From 427fb0f651fe626cfd109774794d6ce215943c71 Mon Sep 17 00:00:00 2001 From: DariusIII Date: Thu, 26 Dec 2019 01:05:19 +0100 Subject: [PATCH] Fix error on email change in user profile. Closes #1049 --- Changelog | 2 ++ app/Http/Controllers/Auth/LoginController.php | 2 +- app/Http/Controllers/ProfileController.php | 20 ++++++++++++++----- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/Changelog b/Changelog index 061e49608..f8f9a3fbf 100755 --- a/Changelog +++ b/Changelog @@ -1,3 +1,5 @@ +2019-12-26 DariusIII + * Fix: Fix error on email change in user profile 2019-12-18 DariusIII * Chg: Check if $release['cleanname'] is set 2019-12-15 DariusIII diff --git a/app/Http/Controllers/Auth/LoginController.php b/app/Http/Controllers/Auth/LoginController.php index 563dc8a5e..83c7f0e28 100644 --- a/app/Http/Controllers/Auth/LoginController.php +++ b/app/Http/Controllers/Auth/LoginController.php @@ -131,6 +131,6 @@ class LoginController extends Controller $request->session()->flush(); $request->session()->regenerate(); - return redirect('/login')->with('info', 'You have been logged out successfully'); + return redirect('login')->with('info', 'You have been logged out successfully'); } } diff --git a/app/Http/Controllers/ProfileController.php b/app/Http/Controllers/ProfileController.php index db3d035e1..ef8dfcd29 100644 --- a/app/Http/Controllers/ProfileController.php +++ b/app/Http/Controllers/ProfileController.php @@ -2,6 +2,7 @@ namespace App\Http\Controllers; +use App\Http\Controllers\Auth\LoginController; use App\Jobs\SendAccountDeletedEmail; use App\Models\ReleaseComment; use App\Models\Settings; @@ -11,6 +12,7 @@ use App\Models\UserRequest; use Blacklight\NZBGet; use Blacklight\SABnzbd; use Blacklight\utility\Utility; +use Illuminate\Auth\Events\Login; use Illuminate\Http\Request; use Illuminate\Support\Arr; use Illuminate\Support\Facades\Auth; @@ -117,7 +119,7 @@ class ProfileController extends BasePageController /** * @param \Illuminate\Http\Request $request * - * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector + * @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector|void * @throws \Exception */ public function edit(Request $request) @@ -265,12 +267,20 @@ class ProfileController extends BasePageController User::updatePassword($userid, $request->input('password')); } - if (! empty($request->input('email')) && $this->userdata->email !== $request->input('email')) { - $this->userdata->email = $request->input('email'); + if (! $this->userdata->hasRole('Admin')) { + if (!empty($request->input('email')) && $this->userdata->email !== $request->input('email')) { + $this->userdata->email = $request->input('email'); - UserVerification::generate($this->userdata); + $verify_user = User::find(Auth::id()); - UserVerification::send($this->userdata, 'User email verification required'); + UserVerification::generate($verify_user); + + UserVerification::send($verify_user, 'User email verification required'); + + Auth::logout(); + + return redirect('login')->with('info', 'You will be able to login after you verify your new email address'); + } } return redirect('profile')->with('success', 'Profile changes saved');