title = '个人设置'; FontAwesomeAsset::register($this); JqueryAsset::register($this); $this->registerCssFile('@web/css/user-info.css'); $details = IPLocation::getDetails($model->last_login_ip); // IP LOCATION // 容量计算 $usedSpace_F = FileSizeHelper::formatBytes($usedSpace); //网盘已用空间 格式化文本 $vaultUsedSpace_F = FileSizeHelper::formatBytes($vaultUsedSpace); //保险箱已用空间 格式化文本 $storageLimit_F = FileSizeHelper::formatMegaBytes($storageLimit); //存储限制 格式化文本 $totalUsed_F = FileSizeHelper::formatBytes($usedSpace + $vaultUsedSpace); //总已用空间 格式化文本 $is_unlimited = ($storageLimit === -1); //检查是否为无限制容量 $usedPercent = $is_unlimited ? 0 : round($usedSpace / ($storageLimit * 1024 * 1024) * 100); //网盘已用百分比 $vaultUsedPercent = $is_unlimited ? 0 : round($vaultUsedSpace / ($storageLimit * 1024 * 1024) * 100); //保险箱已用百分比 $totalUsedPercent = min(($usedPercent + $vaultUsedPercent), 100); //总已用百分比 // QR-CODE if (!is_null($totp_secret)) { $writer = new PngWriter(); $qrCode = QrCode::create($totp_url) ->setEncoding(new Encoding('UTF-8')) ->setErrorCorrectionLevel(ErrorCorrectionLevel::Low) ->setSize(300) ->setMargin(10) ->setRoundBlockSizeMode(RoundBlockSizeMode::Margin) ->setForegroundColor(new Color(0, 0, 0)) ->setBackgroundColor(new Color(255, 255, 255)); $result = $writer->write($qrCode); } // totp $user = new User(); ?>

title) ?>

getGravatar(email: $model->email, s: 100, img: true, atts: ['alt' => 'User Avatar', 'style' => 'border-radius: 50%']) ?>

当前已使用容量

/

% 已用

网盘已用空间 ', ['home/index']) ?>
保险箱已用空间 ', ['site/index']) ?>

field($model, 'bio')->textarea(['rows' => 6])->label('简介') ?>
'btn btn-success']) ?>

Url::to(['user/change-password']), 'method' => 'post' ]); ?> field($model, 'oldPassword')->passwordInput()->label('原密码') ?> field($model, 'newPassword')->passwordInput()->label('新密码') ?> field($model, 'newPasswordRepeat')->passwordInput()->label('重复新密码') ?>
'btn btn-success']) ?>

二步验证


使用除您密码之外的第二种方法来增强您账号的安全性。

  • TOTP (Authenticator app)
    >
  • 备用码
    'btn btn-outline-primary btn-sm', 'id' => 'generate-backup-codes']) ?>

无密码认证


遵循 FIDO2 标准为无密码身份验证设置您的账号。


主题


可以在


删除账户


这个操作不支持撤回,请谨慎操作。

'

确定?

', 'id' => 'deleteAccountModal', 'size' => 'modal-sm', ]); echo Html::tag('div', '确定要删除这个账户?', ['class' => 'modal-body']); echo Html::beginForm(['user/delete'], 'post', ['id' => 'delete-form']); echo '
'; echo Html::checkbox('deleteConfirm', false, ['label' => '确认', 'id' => 'deleteConfirm']); echo '
'; echo '
'; echo Html::submitButton('继续删除', ['class' => 'btn btn-danger', 'disabled' => true, 'id' => 'deleteButton']); echo '
'; echo Html::endForm(); Modal::end(); Modal::begin([ 'title' => '

需要进一步操作以启用二步验证

', 'id' => 'totpSetupModal', 'size' => 'model-xl', ]); /*qrcode*/ ?>
QR Code

使用兼容TOTP的应用程序扫描左侧二维码以添加二步验证

推荐以下二步验证器::

['user/setup-two-factor'], 'method' => 'post' ]); echo Html::activeHiddenInput($user, 'otp_secret', ['value' => $totp_secret]); echo $form->field($user, 'totp_input')->textInput()->label('最后一步! 输入TOTP应用程序上显示的密码以启用二步验证'); echo Html::submitButton('启用二步验证', ['class' => 'btn btn-primary']); ActiveForm::end(); } ?>
registerJsFile('@web/js/user-info.js', ['depends' => [JqueryAsset::class], 'position' => View::POS_END]); ?>