Exemple #1
0
 public function entrar()
 {
     $session = $this->request->session();
     $username = $this->request->data['username'];
     $password = $this->request->data['password'];
     $ldap = new LDAP(3);
     //$brisa = count($ldap->getUsers("(mail=*$username*)"));
     $condicoes = array('login' => $username, 'usuario.historico' => 0);
     $retorno = $ldap->autenticar($username, $password);
     if ($retorno == false) {
         $mensagem = 0;
         return $this->redirect(['controller' => 'login', 'action' => 'index', $mensagem]);
     } else {
         $usuarios = TableRegistry::get("usuario");
         $usuario = $usuarios->find()->where($condicoes)->first();
         if ($usuario != null) {
             if ($usuario->ativo) {
                 $session->write('usuario', $usuario);
                 return $this->redirect(['controller' => 'usuario', 'action' => 'meuperfil']);
             } else {
                 $mensagem = 4;
                 return $this->redirect(['controller' => 'login', 'action' => 'index', $mensagem]);
             }
         } else {
             $this->salvarUsuario($ldap->getUsers("(uid=*{$username}*)"));
             $usuario = $usuarios->find()->where($condicoes)->first();
             if ($usuario->ativo) {
                 $session->write('usuario', $usuario);
                 return $this->redirect(['controller' => 'usuario', 'action' => 'meuperfil']);
             } else {
                 $mensagem = 4;
                 return $this->redirect(['controller' => 'login', 'action' => 'index', $mensagem]);
             }
         }
         //$this->set(compact('usuarios','usuario'));
     }
     $this->set(compact('brisa', 'retorno'));
 }