diff --git a/app/Http/Controllers/TwoFactorController.php b/app/Http/Controllers/TwoFactorController.php
index e4204014b052..e6a5c0473276 100644
--- a/app/Http/Controllers/TwoFactorController.php
+++ b/app/Http/Controllers/TwoFactorController.php
@@ -11,7 +11,7 @@ class TwoFactorController extends Controller
{
$user = auth()->user();
- if ($user->google_2fa_secret || ! $user->phone) {
+ if ($user->google_2fa_secret || ! $user->phone || ! $user->confirmed) {
return redirect('/settings/user_details');
}
@@ -39,7 +39,7 @@ class TwoFactorController extends Controller
$user = auth()->user();
$secret = session()->pull('2fa:secret');
- if ($secret && ! $user->google_2fa_secret && $user->phone) {
+ if ($secret && ! $user->google_2fa_secret && $user->phone && $user->confirmed) {
$user->google_2fa_secret = Crypt::encrypt($secret);
$user->save();
diff --git a/resources/views/accounts/user_details.blade.php b/resources/views/accounts/user_details.blade.php
index f0d31c67513d..a919d5a151a9 100644
--- a/resources/views/accounts/user_details.blade.php
+++ b/resources/views/accounts/user_details.blade.php
@@ -50,21 +50,22 @@
!!}
@endif
- @if ($user->google_2fa_secret)
- {!! Former::checkbox('enable_two_factor')
- ->help(trans('texts.enable_two_factor_help'))
- ->text(trans('texts.enable'))
- ->value(1) !!}
- @elseif ($user->phone)
- {!! Former::plaintext('enable_two_factor')->value(
- Button::primary(trans('texts.enable'))->asLinkTo(url('settings/enable_two_factor'))->small()
- )->help('enable_two_factor_help') !!}
- @else
- {!! Former::plaintext('enable_two_factor')
- ->value('' . trans('texts.set_phone_for_two_factor') . '') !!}
+ @if ($user->confirmed)
+ @if ($user->google_2fa_secret)
+ {!! Former::checkbox('enable_two_factor')
+ ->help(trans('texts.enable_two_factor_help'))
+ ->text(trans('texts.enable'))
+ ->value(1) !!}
+ @elseif ($user->phone)
+ {!! Former::plaintext('enable_two_factor')->value(
+ Button::primary(trans('texts.enable'))->asLinkTo(url('settings/enable_two_factor'))->small()
+ )->help('enable_two_factor_help') !!}
+ @else
+ {!! Former::plaintext('enable_two_factor')
+ ->value('' . trans('texts.set_phone_for_two_factor') . '') !!}
+ @endif
@endif
-
{!! Former::checkbox('dark_mode')
->help(trans('texts.dark_mode_help'))
->text(trans('texts.enable'))