示例#1
0
 public function executa()
 {
     if (!isset($_POST['username'])) {
         echo '<script>alert("Nome de usuario ou senha incorretos"); window.history.go(-1);</script>';
         exit;
     }
     $usuario = $_POST['username'];
     $senha = $_POST['password'];
     $redireciona = $_POST['redireciona'] == '' ? 'lista-aprovacao' : $_POST['redireciona'];
     $dao = new SessaoDAO();
     $id = $dao->validaLoginUsuario($usuario, $senha);
     if ($id == 0) {
         echo '<script>alert("Nome de usuario ou senha incorretos"); window.history.go(-1);</script>';
     } else {
         $daoP = new UsuarioDAO();
         $pessoa = $daoP->carrega($id);
         $nomeCompleto = utf8_encode($pessoa->get_nome());
         $separaNome = explode(' ', $nomeCompleto);
         $nome = $separaNome[0];
         $opcao = 'usuario';
         $foto = $this->getBaseUrl();
         $foto .= 'assets/img/avatar.png';
         $_SESSION[$opcao]['foto'] = $foto;
         $_SESSION[$opcao]['id'] = $pessoa->get_id();
         $_SESSION[$opcao]['nome'] = $nome;
         $_SESSION[$opcao]['nomeCompleto'] = $nomeCompleto;
         $_SESSION[$opcao]['login'] = $pessoa->get_login();
         $_SESSION[$opcao]['email'] = $pessoa->get_email();
         $_SESSION[$opcao]['sexo'] = 'M';
         $dao->deslogaContas($id, $opcao);
         $ip = $_SERVER['REMOTE_ADDR'];
         $userAgent = $_SERVER['HTTP_USER_AGENT'];
         $sessao = new Sessao();
         $sessao->set_idOpcao($id);
         $sessao->set_opcao($opcao);
         $sessao->set_ip($ip);
         $sessao->set_idSessao(session_id());
         $sessao->set_userAgent($userAgent);
         $sessao->set_dataLogin(date('Y-m-d H:i:s'));
         $sessao->set_dataLogout(null);
         $idLog = $dao->loga($sessao);
         $_SESSION[$opcao]['idlog'] = $idLog;
         $dao->visualizaPagina($idLog, 'loga');
         header('Location: ' . $redireciona);
     }
 }