示例#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'] == '' ? 'perfil' : $_POST['redireciona'];
     $dao = new SessaoDAO();
     $id = $dao->validaLogin($usuario, $senha);
     if ($id == 0) {
         echo '<script>alert("Nome de usuario ou senha incorretos"); window.history.go(-1);</script>';
     } else {
         $daoP = new PessoaDAO();
         $pessoa = $daoP->carrega($id);
         $nomeCompleto = $pessoa->get_nome();
         $separaNome = explode(' ', $nomeCompleto);
         $nome = $separaNome[0];
         $opcao = 'pessoa';
         $_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'] = $pessoa->get_sexo();
         $_SESSION[$opcao]['contrato'] = $daoP->getContrato($pessoa->get_id());
         $foto = $this->getBaseUrl();
         $fotoOriginal = $foto;
         $foto .= $pessoa->get_foto() != '' ? $pessoa->get_foto() : 'assets/img/avatar.png';
         $fotoOriginal .= $pessoa->get_fotoOriginal() != '' ? $pessoa->get_fotoOriginal() : 'assets/img/avatar.png';
         $_SESSION[$opcao]['foto'] = $foto;
         $_SESSION[$opcao]['fotoOriginal'] = $fotoOriginal;
         $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);
     }
 }