protected function compile()
	{
		$this->import(BackendUser::class, 'User');

		$container = System::getContainer();
		$ref = $container->get('request_stack')->getCurrentRequest()->attributes->get('_contao_referer_id');
		$return = $container->get('router')->generate('contao_backend', array('do'=>'security', 'ref'=>$ref));
		$user = BackendUser::getInstance();

		// Inform the user if 2FA is enforced
		if (!$user->useTwoFactor && empty($_GET['act']) && $container->getParameter('contao.security.two_factor.enforce_backend'))
		{
			Message::addInfo($GLOBALS['TL_LANG']['MSC']['twoFactorEnforced']);
		}

		$this->Template->href = $this->getReferer(true);
		$this->Template->title = StringUtil::specialchars($GLOBALS['TL_LANG']['MSC']['backBTTitle']);
		$this->Template->button = $GLOBALS['TL_LANG']['MSC']['backBT'];
		$this->Template->ref = $ref;
		$this->Template->action = Environment::get('indexFreeRequest');
		$this->Template->messages = Message::generateUnwrapped();

		if (Input::get('act') == 'enable')
		{
			$this->enableTwoFactor($user, $return);
		}

		if (Input::post('FORM_SUBMIT') == 'tl_two_factor_disable')
		{
			$this->disableTwoFactor($user, $return);
		}

		$this->Template->isEnabled = $this->User->useTwoFactor;
		$this->Template->twoFactor = $GLOBALS['TL_LANG']['MSC']['twoFactorAuthentication'];
		$this->Template->explain = $GLOBALS['TL_LANG']['MSC']['twoFactorExplain'];
		$this->Template->active = $GLOBALS['TL_LANG']['MSC']['twoFactorActive'];
		$this->Template->enableButton = $GLOBALS['TL_LANG']['MSC']['enable'];
		$this->Template->disableButton = $GLOBALS['TL_LANG']['MSC']['disable'];
	}
protected function compile()
	{
		$this->import(BackendUser::class, 'User');

		$container = System::getContainer();
		$ref = $container->get('request_stack')->getCurrentRequest()->attributes->get('_contao_referer_id');
		$return = $container->get('router')->generate('contao_backend', array('do'=>'security', 'ref'=>$ref));
		$user = BackendUser::getInstance();

		
		if (!$user->useTwoFactor && empty($_GET['act']) && $container->getParameter('contao.security.two_factor.enforce_backend'))
		{
			Message::addInfo($GLOBALS['TL_LANG']['MSC']['twoFactorEnforced']);
		}

		$this->Template->href = $this->getReferer(true);
		$this->Template->title = StringUtil::specialchars($GLOBALS['TL_LANG']['MSC']['backBTTitle']);
		$this->Template->button = $GLOBALS['TL_LANG']['MSC']['backBT'];
		$this->Template->ref = $ref;
		$this->Template->action = Environment::get('indexFreeRequest');
		$this->Template->messages = Message::generateUnwrapped();

		if (Input::get('act') == 'enable')
		{
			$this->enableTwoFactor($user, $return);
		}

		if (Input::post('FORM_SUBMIT') == 'tl_two_factor_disable')
		{
			$this->disableTwoFactor($user, $return);
		}

		$this->Template->isEnabled = $this->User->useTwoFactor;
		$this->Template->twoFactor = $GLOBALS['TL_LANG']['MSC']['twoFactorAuthentication'];
		$this->Template->explain = $GLOBALS['TL_LANG']['MSC']['twoFactorExplain'];
		$this->Template->active = $GLOBALS['TL_LANG']['MSC']['twoFactorActive'];
		$this->Template->enableButton = $GLOBALS['TL_LANG']['MSC']['enable'];
		$this->Template->disableButton = $GLOBALS['TL_LANG']['MSC']['disable'];
	}
protected function compile ( ) { $ this -> import ( BackendUser :: class , 'User' ) ; $ container = System :: getContainer ( ) ; $ ref = $ container -> get ( 'request_stack' ) -> getCurrentRequest ( ) -> attributes -> get ( '_contao_referer_id' ) ; $ return = $ container -> get ( 'router' ) -> generate ( 'contao_backend' , array ( 'do' => 'security' , 'ref' => $ ref ) ) ; $ user = BackendUser :: getInstance ( ) ; // Inform the user if 2FA is enforced if ( ! $ user -> useTwoFactor && empty ( $ _GET [ 'act' ] ) && $ container -> getParameter ( 'contao.security.two_factor.enforce_backend' ) ) { Message :: addInfo ( $ GLOBALS [ 'TL_LANG' ] [ 'MSC' ] [ 'twoFactorEnforced' ] ) ; } $ this -> Template -> href = $ this -> getReferer ( true ) ; $ this -> Template -> title = StringUtil :: specialchars ( $ GLOBALS [ 'TL_LANG' ] [ 'MSC' ] [ 'backBTTitle' ] ) ; $ this -> Template -> button = $ GLOBALS [ 'TL_LANG' ] [ 'MSC' ] [ 'backBT' ] ; $ this -> Template -> ref = $ ref ; $ this -> Template -> action = Environment :: get ( 'indexFreeRequest' ) ; $ this -> Template -> messages = Message :: generateUnwrapped ( ) ; if ( Input :: get ( 'act' ) == 'enable' ) { $ this -> enableTwoFactor ( $ user , $ return ) ; } if ( Input :: post ( 'FORM_SUBMIT' ) == 'tl_two_factor_disable' ) { $ this -> disableTwoFactor ( $ user , $ return ) ; } $ this -> Template -> isEnabled = $ this -> User -> useTwoFactor ; $ this -> Template -> twoFactor = $ GLOBALS [ 'TL_LANG' ] [ 'MSC' ] [ 'twoFactorAuthentication' ] ; $ this -> Template -> explain = $ GLOBALS [ 'TL_LANG' ] [ 'MSC' ] [ 'twoFactorExplain' ] ; $ this -> Template -> active = $ GLOBALS [ 'TL_LANG' ] [ 'MSC' ] [ 'twoFactorActive' ] ; $ this -> Template -> enableButton = $ GLOBALS [ 'TL_LANG' ] [ 'MSC' ] [ 'enable' ] ; $ this -> Template -> disableButton = $ GLOBALS [ 'TL_LANG' ] [ 'MSC' ] [ 'disable' ] ; }
Generate the module
Generate the module