Ejemplo n.º 1
0
 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);
     }
 }
Ejemplo n.º 2
0
 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');
 }