Skip to content
Snippets Groups Projects
Commit 55d3689a authored by Jan-Hendrik Willms's avatar Jan-Hendrik Willms
Browse files

fixes #3532

Closes #3532

Merge request studip/studip!2426
parent cda5cbe1
No related branches found
No related tags found
No related merge requests found
...@@ -11,6 +11,8 @@ class TfaController extends AuthenticatedController ...@@ -11,6 +11,8 @@ class TfaController extends AuthenticatedController
$this->user = User::findCurrent(); $this->user = User::findCurrent();
$this->is_root = $GLOBALS['perm']->have_perm('root'); $this->is_root = $GLOBALS['perm']->have_perm('root');
$this->own_profile = true;
if ($this->is_root && Request::submitted('username')) { if ($this->is_root && Request::submitted('username')) {
$username = Request::username('username'); $username = Request::username('username');
$this->user = User::findOneByUsername($username); $this->user = User::findOneByUsername($username);
...@@ -19,6 +21,8 @@ class TfaController extends AuthenticatedController ...@@ -19,6 +21,8 @@ class TfaController extends AuthenticatedController
throw new Exception(_('Diesen Nutzer gibt es nicht')); throw new Exception(_('Diesen Nutzer gibt es nicht'));
} }
$this->own_profile = false;
URLHelper::addLinkParam('username', Request::username('username')); URLHelper::addLinkParam('username', Request::username('username'));
PageLayout::postMessage( PageLayout::postMessage(
...@@ -33,6 +37,10 @@ class TfaController extends AuthenticatedController ...@@ -33,6 +37,10 @@ class TfaController extends AuthenticatedController
} }
$this->secret = new TFASecret($this->user->id); $this->secret = new TFASecret($this->user->id);
if (!$this->own_profile) {
PageLayout::postWarning(_('Sie können die Zwei-Faktor-Authentifizierung nicht für andere Personen einrichten.'));
}
} }
public function index_action() public function index_action()
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
/** /**
* @var TFASecret $secret * @var TFASecret $secret
* @var TfaController $controller * @var TfaController $controller
* @var bool $own_profile
*/ */
?> ?>
<p> <p>
...@@ -9,5 +10,7 @@ ...@@ -9,5 +10,7 @@
<?= $secret->type == 'app' ? _('Authenticator-App') : _('E-Mail') ?> <?= $secret->type == 'app' ? _('Authenticator-App') : _('E-Mail') ?>
</p> </p>
<form action="<?= $controller->revoke() ?>" method="post"> <form action="<?= $controller->revoke() ?>" method="post">
<?= Studip\Button::createAccept(_('Aufheben')) ?> <?= Studip\Button::createAccept(_('Aufheben'), 'revoke', $own_profile ? [] : [
'disabled' => ''
]) ?>
</form> </form>
<?php <?php
/** /**
* @var TfaController $controller * @var TfaController $controller
* @var bool $own_profile
*/ */
?> ?>
<form class="default" action="<?= $controller->create() ?>" method="post"> <form class="default" action="<?= $controller->create() ?>" method="post">
...@@ -12,17 +13,21 @@ ...@@ -12,17 +13,21 @@
<?= formatReady(Config::get()->TFA_TEXT_INTRODUCTION) ?> <?= formatReady(Config::get()->TFA_TEXT_INTRODUCTION) ?>
<label> <label>
<input required type="radio" name="type" value="email"> <input required type="radio" name="type" value="email"
<? if (!$own_profile) echo 'disabled'; ?>>
<?= _('E-Mail') ?> <?= _('E-Mail') ?>
</label> </label>
<label> <label>
<input required type="radio" name="type" value="app"> <input required type="radio" name="type" value="app"
<? if (!$own_profile) echo 'disabled'; ?>>
<?= _('Authenticator-App') ?> <?= _('Authenticator-App') ?>
</label> </label>
</fieldset> </fieldset>
<footer> <footer>
<?= Studip\Button::createAccept(_('Aktivieren')) ?> <?= Studip\Button::createAccept(_('Aktivieren'), 'activate', $own_profile ? [] : [
'disabled' => ''
]) ?>
</footer> </footer>
</form> </form>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment