public function permissaoUsuario($class, $method) { try { // Converte a sessão serializada anteriormente em objeto $usuario = unserialize($_SESSION['usuario']); // Carrega uma nova instância da classe SqlUsuario para utilizar o método validarPermissao $sqlUsuario = new SqlUsuario(); // Se o método for igual a classe (ou seja, vazio), a página acessada é o index. Caso contrário, retorna o método $method = $class == $method ? 'index' : $method; // Valida a permissão do usuário para acessar a classe e o método em questão $permissao = $sqlUsuario->validarPermissao($class, $method, (int) $usuario->get_idUsuario(), $usuario->get_tipoUsuarioAtivo()->get_idTipoUsuario()); // var_dump($usuario->get_tipoUsuarioAtivo()->get_idTipoUsuario()) . '<br />'; // var_dump($permissao); // die; if (!empty($permissao)) { if ($permissao[0]['manutencao'] == 1) { header('location:' . base_url() . 'usuario/permissao_usuario_w/manutencao_mensagem'); exit; } // Se o tipo de usuário ativo for igual ou menor que zero (não estiver definido), e o id de usuário maior que zero (estiver definido), e o método selecionado for diferente da página de seleção de vínculos... if ((int) $usuario->get_tipoUsuarioAtivo()->get_idTipoUsuario() <= 0 && (int) $usuario->get_idUsuario() > 0 && $method != 'selecinoarVinculo') { // Se o usuário estiver cadastrado em mais de um tipo de usuário if (count($usuario->get_tipoUsuario()) > 1) { // redireciona para a página de seleção de tipo de usuário, para que o mesmo ecolha qual deseja consultar header('location:' . base_url() . 'usuario/usuario_w/selecinoarVinculo'); exit; } else { foreach ($usuario->get_tipoUsuario() as $tipo) { header('location:' . base_url() . 'usuario/usuario_w/selecinoarVinculo/' . $tipo->get_idTipoUsuario() . ''); } } } } else { // redireciona para página de login // session_destroy(); // header('location:' . base_url() . 'usuario/login_w'); // exit(); $this->redirectToLogin(); } return $permissao; } catch (Exception $e) { // session_destroy(); // header('location:' . base_url()); $this->redirectToLogin(); } }