File Manager

Current Directory: /home/astoriaah/www/old15/administrator/components/com_admintools/controllers
Viewing File: /home/astoriaah/www/old15/administrator/components/com_admintools/controllers/twofactor.php
<?php /** * @package AdminTools * @copyright Copyright (c)2010-2015 Nicholas K. Dionysopoulos * @license GNU General Public License version 3, or later */ // Protect from unauthorized access defined('_JEXEC') or die; class AdmintoolsControllerTwofactor extends F0FController { public function __construct($config = array()) { parent::__construct($config); $this->modelName = 'twofactor'; } public function execute($task) { if (!in_array($task, array('resetkey', 'resetpanic', 'validate'))) { $task = 'browse'; } parent::execute($task); } public function resetkey() { $this->_csrfProtection(); $model = $this->getThisModel(); $model->generateTwoFactorAuthenticationSecret(); $this->setRedirect('index.php?option=com_admintools&view=twofactor', JText::_('COM_ADMINTOOLS_TWOFACTOR_MSG_RESETKEY')); } public function resetpanic() { $this->_csrfProtection(); $model = $this->getThisModel(); $model->resetPanic(); $this->setRedirect('index.php?option=com_admintools&view=twofactor', JText::_('COM_ADMINTOOLS_TWOFACTOR_MSG_RESETPANIC')); } public function validate() { $this->_csrfProtection(); $code = $this->input->getVar('securitycode', ''); $model = $this->getThisModel(); $result = $model->validateAndEnable($code); if ($result) { $this->setRedirect('index.php?option=com_admintools&view=waf', JText::_('COM_ADMINTOOLS_TWOFACTOR_MSG_ENABLED')); } else { $this->setRedirect('index.php?option=com_admintools&view=twofactor', JText::_('COM_ADMINTOOLS_TWOFACTOR_MSG_DISABLED'), 'error'); } } protected function onBeforeBrowse() { $result = $this->checkACL('admintools.security'); if ($result) { $model = F0FModel::getTmpInstance('Wafconfig', 'AdmintoolsModel'); $config = $model->getConfig(); $secret = $config['twofactorauth_secret']; if (empty($secret)) { $m = $this->getThisModel(); $m->generateTwoFactorAuthenticationSecret(); $this->setRedirect('index.php?option=com_admintools&view=twofactor'); } } return $result; } protected function onBeforeResetkey() { return $this->checkACL('admintools.security'); } protected function onBeforeResetpanic() { return $this->checkACL('admintools.security'); } protected function onBeforeValidate() { return $this->checkACL('admintools.security'); } }