+++ /dev/null
-<?php
-namespace wcf\acp\form;
-use wcf\system\request\LinkHandler;
-use wcf\util\HeaderUtil;
-
-/**
- * Aborts the multi-factor authentication process.
- *
- * @author Tim Duesterhus
- * @copyright 2001-2020 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- * @package WoltLabSuite\Core\Acp\Form
- * @since 5.4
- */
-class MultifactorAuthenticationAbortForm extends \wcf\form\MultifactorAuthenticationAbortForm {
- /**
- * Returns to the landing page otherwise.
- */
- protected function performRedirect() {
- HeaderUtil::redirect(
- LinkHandler::getInstance()->getLink('Login')
- );
- exit;
- }
-}
+++ /dev/null
-<?php
-namespace wcf\form;
-use wcf\system\exception\PermissionDeniedException;
-use wcf\system\request\LinkHandler;
-use wcf\system\WCF;
-use wcf\util\HeaderUtil;
-
-/**
- * Aborts the multi-factor authentication process.
- *
- * @author Tim Duesterhus
- * @copyright 2001-2020 WoltLab GmbH
- * @license GNU Lesser General Public License <http://opensource.org/licenses/lgpl-license.php>
- * @package WoltLabSuite\Core\Form
- * @since 5.4
- */
-class MultifactorAuthenticationAbortForm extends AbstractForm {
- const AVAILABLE_DURING_OFFLINE_MODE = true;
-
- /**
- * @inheritDoc
- */
- public $useTemplate = false;
-
- /**
- * @inheritDoc
- */
- public function readParameters() {
- parent::readParameters();
-
- if (WCF::getUser()->userID) {
- throw new PermissionDeniedException();
- }
-
- $user = WCF::getSession()->getPendingUserChange();
- if (!$user) {
- $this->performRedirect();
- }
- }
-
- /**
- * @inheritDoc
- */
- public function save() {
- parent::save();
-
- WCF::getSession()->clearPendingUserChange();
-
- $this->saved();
- }
-
- /**
- * @inheritDoc
- */
- public function saved() {
- parent::saved();
-
- $this->performRedirect();
- }
-
- /**
- * Returns to the landing page otherwise.
- */
- protected function performRedirect() {
- HeaderUtil::delayedRedirect(
- LinkHandler::getInstance()->getLink(),
- WCF::getLanguage()->getDynamicVariable('wcf.user.security.multifactor.authentication.logout.success')
- );
- exit;
- }
-
- /**
- * @inheritDoc
- */
- public function show() {
- parent::show();
-
- // It is not expected to reach this place, because the form should
- // never be accessed via a direct link.
- // If we reach it nonetheless we simply redirect back to the authentication
- // form which contains the proper button to perform the submission.
- HeaderUtil::redirect(LinkHandler::getInstance()->getLink('MultifactorAuthentication'));
- exit;
- }
-}
<item name="wcf.user.security.multifactor.totp.deviceName.description.auth"><![CDATA[Das Gerät, das den genutzten Éinmalcode generiert hat.]]></item>
<item name="wcf.user.security.multifactor.authentication.user.headline"><![CDATA[Hallo {$user->username}!]]></item>
<item name="wcf.user.security.multifactor.authentication.user.content"><![CDATA[Die eingegebenen Zugangsdaten sind korrekt, aber {if LANGUAGE_USE_INFORMAL_VARIANT}dein{else}Ihr{/if} Benutzerkonto ist mit der Mehrfaktor-Authentifizierung geschützt. Bitte {if LANGUAGE_USE_INFORMAL_VARIANT}verwende deinen{else}verwenden Sie Ihren{/if} zweiten Faktor, um den Login abzuschließen.]]></item>
- <item name="wcf.user.security.multifactor.authentication.logout"><![CDATA[Abbrechen und Abmelden]]></item>
- <item name="wcf.user.security.multifactor.authentication.logout.success"><![CDATA[Die Mehrfaktor-Authentifizierung wurde erfolgreich abgebrochen.]]></item>
<item name="wcf.user.security.multifactor.com.woltlab.wcf.multifactor.totp.description"><![CDATA[<p class="small">{if LANGUAGE_USE_INFORMAL_VARIANT}Generiere Einmalcodes mit einer App auf deinem Smartphone.{else}Generieren Sie Einmalcodes mit einer App auf Ihrem Smartphone.{/if}</p>]]></item>
<item name="wcf.user.security.multifactor.com.woltlab.wcf.multifactor.email.description"><![CDATA[<p class="small">{if LANGUAGE_USE_INFORMAL_VARIANT}Du erhältst bei jedem Login einen Einmalcode an deine E-Mail-Adresse.{else}Sie erhalten bei jedem Login einen Einmalcode an Ihre E-Mail-Adresse.{/if}</p>]]></item>
<item name="wcf.user.security.multifactor.description"><![CDATA[{if LANGUAGE_USE_INFORMAL_VARIANT}Schütze dein Benutzerkonto{else}Schützen Sie Ihr Benutzerkonto{/if}, indem bei jedem Login eine zusätzliche Authentifizierung mit Hilfe eines zweiten Faktors erforderlich ist.]]></item>
<item name="wcf.user.security.multifactor.totp.deviceName.description.auth"><![CDATA[The device that generated the used one time code.]]></item>
<item name="wcf.user.security.multifactor.authentication.user.headline"><![CDATA[Hello {$user->username}!]]></item>
<item name="wcf.user.security.multifactor.authentication.user.content"><![CDATA[The provided credentials are correct, but your account is protected with multi-factor authentication. Please use your second factor to complete the login process.]]></item>
- <item name="wcf.user.security.multifactor.authentication.logout"><![CDATA[Abort and Logout]]></item>
- <item name="wcf.user.security.multifactor.authentication.logout.success"><![CDATA[The multi-factor authentication has successfully been aborted.]]></item>
<item name="wcf.user.security.multifactor.com.woltlab.wcf.multifactor.totp.description"><![CDATA[<p class="small">Generate one time codes with an app on your smartphone.</p>]]></item>
<item name="wcf.user.security.multifactor.com.woltlab.wcf.multifactor.email.description"><![CDATA[<p class="small">You will receive a one time code via email after logging in.</p>]]></item>
<item name="wcf.user.security.multifactor.description"><![CDATA[Protect your account by requiring authentication with a second factor for every login.]]></item>