/**
  * Ação responsável pelo login/autenticação de usuários.
  *
  * @return View /vistior/login.
  */
 public function visitor_login()
 {
     if ($this->request->is('post')) {
         $this->allowParams(array('User' => array('email', 'password')));
         if ($this->Auth->login()) {
             $this->redirect('/' . SupportComponent::userHierarchy());
         }
         $this->Session->setFlash('Combinação de e-mail e senha é inválida.', 'flash/mini/error');
     }
 }
Exemplo n.º 2
0
 /**
  * Sobreescrita do construtor, para incrementar algumas chamadas iniciais
  * @param \Controller $controller
  */
 public function __construct(\Controller $controller = null)
 {
     parent::__construct($controller);
     $this->controller = $controller;
     // Definindo a hierarquia do usuário atual.
     $this->hierarchy = SupportComponent::userHierarchy();
     $this->requestCode = $controller->requestCode;
     $this->setActionShort();
     // Definindo uma variavel com os dados do usuário conectado
     $this->set('user', SupportComponent::toObject($controller->Auth->user()));
 }
 /**
  * Configurações necessarias para o componente
  * de autenticação de usuário, AuthComponent
  */
 private function authComponentConfig()
 {
     // Índice onde será salvo as informações de sessão do usuário. Este deve
     // ser único, para que não ocorra colisão de sessões de outras aplicações
     // que utilizam está mesma base.
     // Pode-se basear pelo nome da aplicação e o IP do cliente.
     AuthComponent::$sessionKey = PROJECT_NAME . str_replace('.', '', $this->RequestHandler->getClientIp());
     $this->Auth->authenticate = array(AuthComponent::ALL => array('userModel' => 'User', 'fields' => array('username' => 'email'), 'scope' => array('User.enable' => TRUE)), 'Form');
     $this->Auth->authorize = 'Controller';
     $this->Auth->loginAction = array('controller' => 'Users', 'action' => 'login', 'prefix' => 'visitor');
     $this->Auth->logoutRedirect = array('controller' => 'Users', 'action' => 'login', 'prefix' => 'visitor');
     $this->Auth->flash['element'] = 'flash/mini/error';
     // Caso o prefixo de uma ação requisitada pela URL seja
     // igual a  hierarqui do usuaŕio, devemos permitir sua execução.
     if ($this->request->prefix == SupportComponent::userHierarchy()) {
         $this->Auth->allow($this->request->action);
     }
 }