/** * Testing the checkAdminPasswordIsDefault() method. * * @since 2.0.2 */ public function testCheckAdminPasswordIsDefault() { $config = ConfigProvider::getInstance(); $config->set('app.install.password', 'test'); $this->assertTrue(SecurityUtils::checkAdminPasswordIsDefault(password_hash('test', PASSWORD_DEFAULT, ['cost' => 12])), 'Testing when the default password is compared'); $this->assertFalse(SecurityUtils::checkAdminPasswordIsDefault(password_hash('different', PASSWORD_DEFAULT, ['cost' => 12])), 'Testing when a non-default password is compared'); }
/** * Use this callback to inject in the admin menu template fragment. * * @return string * * @since 1.2 */ public function after_displayPageHead_callback() { $accept = $this->request->getAccept(); if ($accept != 'application/json' && $this->checkIfAccessingFromSecureURL()) { $viewState = ViewState::getInstance(); if ($viewState->get('renderAdminMenu') === true) { $config = ConfigProvider::getInstance(); $sessionProvider = $config->get('session.provider.name'); $session = SessionProviderFactory::getInstance($sessionProvider); if ($session->get('currentUser') !== false) { $passwordResetRequired = SecurityUtils::checkAdminPasswordIsDefault($session->get('currentUser')->get('password')); $menu = View::loadTemplateFragment('html', 'adminmenu.phtml', array('passwordResetRequired' => $passwordResetRequired)); } else { $menu = ''; } return $menu; } } else { return ''; } }