Ejemplo n.º 1
0
 public static function login($login, $senha)
 {
     $u = UsuarioController::usuario_por_login($login);
     if ($u) {
         require_once PROJECT_ADDRESS . "/lib/util/proteger.php";
         $pass = embaralhar($senha, $u->getCodigo());
         // login e senha estão corretos
         if ($pass == $u->getSenha()) {
             // inicia o usuário
             UsuarioController::$usuario = $u;
             // registra a sessão
             SessaoController::iniciar();
             if (SessaoController::get("token")) {
                 require_once PROJECT_ADDRESS . "/lib/util/code.php";
                 $codigo = get_codigo(5);
                 // atualiza o código do usuário
                 UsuarioController::atualizar($senha, $codigo);
             }
         } else {
             // senha incorreta
             UsuarioController::defineException("login", "Login ou senha incorretos!");
         }
     } else {
         // e-mail ou username não cadastrados
         UsuarioController::defineException("login", "Login ou senha incorretos!");
     }
 }
Ejemplo n.º 2
0
 public static function autenticar($token)
 {
     require PROJECT_ADDRESS . "/lib/util/JWT.php";
     $m = JWT::from_token($token, jwt_secret_key());
     if ($m) {
         $usuario = Usuario::fromJSON($m->getPayload(), "email,codigo");
         SessaoController::doUsuario($usuario);
         if (SessaoController::get("id")) {
             UsuarioController::porEmail($usuario->getEmail());
         } else {
             SessaoController::defineException("autenticar", "Sessão inválida!");
         }
     } else {
         SessaoController::defineException("autenticar", "Token inválido!");
     }
 }
Ejemplo n.º 3
0
<?php

require "../app/project.php";
?>

<?php 
getController("Usuario");
getController("Sessao");
?>

<?php 
if (isset($_POST["login"]) and isset($_POST["senha"])) {
    UsuarioController::login($_POST["login"], $_POST["senha"]);
    if (SessaoController::get("token")) {
        ok_header();
        echo SessaoController::$sessao->getJson("token");
    } else {
        exception_header();
        if (UsuarioController::get("id")) {
            SessaoController::print_exception("autenticar");
        } else {
            UsuarioController::print_exception("login");
        }
    }
} else {
    bad_request_header();
}