public static function autenticar(Login $login) { TTransaction::open('my_config'); $sessao = new TSessao(true); if ($conn = TTransaction::get()) { $sql = 'SELECT * FROM usuarios WHERE login_usuario like ? AND senha_usuario like ?'; $sth = $conn->prepare($sql); $sth->execute(array($login->getUsuario(), $login->getSenha())); $result = $sth->fetch(PDO::FETCH_OBJ); if ($result) { include 'app.functions/buscaPermissoes.php'; $result->permissoes = buscaPermissoes($result->id_usuario); $sessao->addVar('usuario', $result); header('location:index.php'); } else { $sessao->addVar('msg', 1); header('location:index.php'); } TTransaction::close(); } else { echo 'Sem conexão com banco!'; } }
function validate($usuario) { // verifica se o usuario está logado if ($usuario) { if ($_GET) { $permissoes = $usuario->permissoes; $valida = false; if (isset($permissoes[$_GET['modulo']])) { if (in_array($_GET['page'], $permissoes[$_GET['modulo']])) { $valida = true; } } if (!$valida) { // se o usuario não tem permissao redireciona pra pagina principal // sessão para indicar que dever ser mostrado a menssagem de não permitido $sessao = new TSessao(true); $sessao->addVar('msg1', 5); //header('location: index.php'); } return $valida; } else { return true; } } else { // redireciona o usuario que não está logado para a pagina de login pra não exibir nada no get if ($_GET != null) { if ($_GET['page'] == 'add-usuario' and $_GET['modulo'] == 'usuarios') { return true; } else { return false; } } else { return true; } } }