protected function execute($arguments = array(), $options = array()) { $this->configuration = ProjectConfiguration::getApplicationConfiguration('frontend', 'prod', true); $this->context = sfContext::createInstance($this->configuration); $databaseManager = new sfDatabaseManager($this->configuration); $user = UserPeer::retrieveByLogin($arguments['username']); if (is_null($user)) { $this->logSection('tempos', sprintf('Unable to find an user with this username: "******"', $arguments['username']), 512, 'ERROR'); } else { $user->setPassword($arguments['password']); $user->save(); $this->logSection('tempos', sprintf('Password reset for user "%s" (%s)', $user->getLogin(), $user->getFullname()), 512); } }
public function executePrepareLogin(sfWebRequest $request) { $this->forward404Unless($request->isMethod('post')); if (!$this->getUser()->isAuthenticated()) { $username = $request->getParameter('username'); $password = $request->getParameter('password'); $user = null; if (ConfigurationHelper::getParameter('General', 'auth_ldap_choice', false)) { // Need to authenticate with LDAP server $server = ConfigurationHelper::getParameter('General', 'auth_ldap_host', ''); $domain = ConfigurationHelper::getParameter('General', 'auth_ldap_domain', ''); $ldap = @ldap_connect($server); // ex: myldapserver.company.com if ($ldap) { ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3); ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0); // Process the username for good domain name $ldpa_username = $username . '@' . $domain; // ex: Administrator@MYDOMAIN.com $bind = @ldap_bind($ldap, $ldpa_username, $password); if ($bind) { $user = UserPeer::retrieveByLogin($username); } ldap_close($ldap); } } else { $user = UserPeer::authenticate($username, $password); } if (!empty($user) && $user->getIsActive()) { $this->getUser()->setTemposUser($user); $referer = $request->getParameter('referer'); if (empty($referer)) { $referer = 'home/index'; } $this->redirect($referer); } else { $this->getUser()->setFlash('loginError', true); } } $this->redirect('login/login'); }