Example #1
0
function alterar($id_mapa, $publicado_mapa, $ordem_mapa, $perfil_mapa, $ligados_mapa, $temas_mapa, $desc_mapa, $ext_mapa, $imagem_mapa, $linkdireto_mapa, $nome_mapa, $outros_mapa, $mapfile, $dbhw)
{
    global $convUTF, $esquemaadmin;
    if ($convUTF != true) {
        $nome_mapa = utf8_decode($nome_mapa);
        $desc_mapa = utf8_decode($desc_mapa);
        $perfil_menu = utf8_decode($perfil_mapa);
    }
    $perfil_mapa = str_replace(",", " ", trim($perfil_mapa));
    // verifica a consistencia da lista de perfis
    $perfis = pegaDados("SELECT perfil from " . $esquemaadmin . "i3geoadmin_perfis order by perfil", $dbw, false);
    $p = array();
    foreach ($perfis as $perfil) {
        $p[] = $perfil["perfil"];
    }
    $perfil_mapa = implode(" ", array_intersect(explode(" ", $perfil_mapa), $p));
    $dataCol = array("publicado_mapa" => $publicado_mapa, "ordem_mapa" => $ordem_mapa, "desc_mapa" => $desc_mapa, "ext_mapa" => $ext_mapa, "imagem_mapa" => $imagem_mapa, "outros_mapa" => $outros_mapa, "nome_mapa" => $nome_mapa, "linkdireto_mapa" => $linkdireto_mapa, "temas_mapa" => $temas_mapa, "ligados_mapa" => $ligados_mapa, "perfil_mapa" => $perfil_mapa);
    $resultado = i3GeoAdminUpdate($dbhw, "i3geoadmin_mapas", $dataCol, "WHERE id_mapa = {$id_mapa}");
    if ($resultado === false) {
        return false;
    }
    return $id_mapa;
}
Example #2
0
function adicionaAcesso($id_ws, $sucesso)
{
    global $esquemaadmin;
    try {
        if ($id_ws == "") {
            return;
        }
        include "conexao.php";
        $dados = pegaDados("select * from " . $esquemaadmin . "i3geoadmin_ws WHERE id_ws = {$id_ws}");
        if (count($dados) == 0) {
            return;
        }
        if ($dados[0]["nacessos"] == "") {
            $dados[0]["nacessos"] = 0;
        }
        $acessos = $dados[0]["nacessos"] + 1;
        if ($sucesso) {
            $ok = $dados[0]["nacessosok"] + 1;
        } else {
            $ok = $dados[0]["nacessosok"];
        }
        if ($ok == "") {
            $ok = 0;
        }
        $dataCol = array("nacessos" => $acessos, "nacessosok" => $ok);
        i3GeoAdminUpdate($dbhw, "i3geoadmin_ws", $dataCol, "WHERE id_ws = {$id_ws}");
        $dbhw = null;
        $dbh = null;
    } catch (PDOException $e) {
        return "Error!: ";
    }
}
Example #3
0
$temasassocsubgrupos = pegaDados("select id_tema from " . $esquemaadmin . "i3geoadmin_n3 group by id_tema");
$nacessostema = pegaDados("select b.nome_tema,sum(a.nacessos) as soma,a.codigo_tema from " . $esquemaadmin . "i3geoadmin_acessostema as a," . $esquemaadmin . "i3geoadmin_temas as b where a.codigo_tema = b.codigo_tema and a.nacessos > 0 group by a.codigo_tema,b.nome_tema");
$ntags = pegaDados("select nome from " . $esquemaadmin . "i3geoadmin_tags");
$totaltemasvalidos = count($temasvalidos);
$codigostemas = array();
$ncodigostemas = array();
$nnomestemas = array();
$ndownloadtemas = 0;
$nkmltemas = 0;
$nogctemas = 0;
$nsemlinktemas = 0;
$nsemtagstemas = 0;
$sql = "select codigo_tema,soma from (select a.codigo_tema, sum(nacessos) as soma from " . $esquemaadmin . "i3geoadmin_acessostema as a," . $esquemaadmin . "i3geoadmin_temas as b where a.codigo_tema = b.codigo_tema AND nacessos > 0 group by a.codigo_tema) as soma where soma >";
$nacessosmaiorqueum = count(pegaDados($sql . " 0"));
$nacessosmaiorquedez = count(pegaDados($sql . " 10"));
$nacessosmaiorquecem = count(pegaDados($sql . " 100"));
$temasacessos = array();
error_reporting(0);
foreach ($temasvalidos as $tema) {
    $ncodigostemas[$tema["codigo_tema"]]++;
    $nnomestemas[$tema["nome_tema"]]++;
    if (strtolower($tema["download_tema"]) == "sim") {
        $ndownloadtemas++;
    }
    if (strtolower($tema["kml_tema"]) != "nao") {
        $nkmltemas++;
    }
    if (strtolower($tema["ogc_tema"]) != "nao") {
        $nogctemas++;
    }
    if (strtolower($tema["link_tema"]) == "") {
Example #4
0
 * de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
 * Consulte a Licença Pública Geral do GNU para mais detalhes.
 * Você deve ter recebido uma copia da Licença Pública Geral do
 * GNU junto com este programa; se não, escreva para a
 * Free Software Foundation, Inc., no endereço
 * 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
 */
error_reporting(0);
include dirname(__FILE__) . "/../../../classesphp/sani_request.php";
include dirname(__FILE__) . "/../../../admin/php/admin.php";
if (!isset($idioma) || $idioma == "") {
    $idioma = "pt";
}
$id_n1 = (int) $_POST["id_grupo"];
$funcao = strtoupper($_POST["funcao"]);
switch ($funcao) {
    case "LISTA":
        $sql = "\nSELECT subgrupo.nome_subgrupo AS nome,n2.id_n2 AS id FROM {$esquemaadmin}i3geoadmin_n2 AS n2\nJOIN {$esquemaadmin}i3geoadmin_subgrupos AS subgrupo ON n2.id_subgrupo = subgrupo.id_subgrupo AND n2.id_n1 = {$id_n1}\nJOIN (\n\tSELECT r.id_n2\n\tFROM  {$esquemaadmin}i3geoadmin_n3 AS r, {$esquemaadmin}i3geoadmin_temas AS t\n\tWHERE r.id_tema = t.id_tema AND (t.ogc_tema != 'NAO' OR t.download_tema != 'NAO') AND r.publicado != 'NAO' AND (n3_perfil = '' OR n3_perfil isnull )\n\t) AS n3 ON  (n3.id_n2 = n2.id_n2 OR n2.id_n2 = 0 )\n\nWHERE n2.publicado != 'NAO' AND (n2.n2_perfil = '' OR n2.n2_perfil isnull )\nGROUP BY subgrupo.nome_subgrupo,n2.id_n2\nORDER BY lower(subgrupo.nome_subgrupo)\n";
        $dados = pegaDados($sql, "", false);
        if ($dados === false) {
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        $sqlCamadas = "\n\t\t\tSELECT r.id_tema,t.codigo_tema,t.nome_tema,t.link_tema,lower(t.ogc_tema) AS ogc_tema,lower(t.download_tema) AS download_tema\n\t\t\tFROM {$esquemaadmin}i3geoadmin_raiz AS r, {$esquemaadmin}i3geoadmin_temas AS t\n\t\t\tWHERE r.nivel = 1 AND r.id_tema = t.id_tema AND (t.ogc_tema != 'NAO' OR t.download_tema != 'NAO') AND r.id_nivel = {$id_n1} AND\n\t\t\t(r.perfil = '' OR r.perfil isnull )\n\t\t\tORDER BY lower(t.nome_tema)\n\t\t";
        $camadas = pegaDados($sqlCamadas, "", false);
        $dbhw = null;
        $dbh = null;
        retornaJSON(array("dados" => $dados, "camadas" => $camadas));
        break;
}
cpjson($retorno);
Example #5
0
     $dbh = null;
     if ($usuarios === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     retornaJSON(array("grupo" => $grupo, "usuarios" => $usuarios));
     break;
 case "LISTA":
     $grupos = pegaDados("SELECT id_grupo,nome from " . $esquemaadmin . "i3geousr_grupos order by lower(nome)", $dbh, false);
     if ($grupos === false) {
         $dbhw = null;
         $dbh = null;
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $usuarios = pegaDados("SELECT id_usuario, nome_usuario FROM " . $esquemaadmin . "i3geousr_usuarios WHERE ativo = 1 ORDER BY nome_usuario", dbh, false);
     $dbhw = null;
     $dbh = null;
     if ($usuarios === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     retornaJSON(array("grupos" => $grupos, "usuarios" => $usuarios));
     break;
 case "EXCLUIR":
     $retorna = excluir($id_grupo, $dbhw);
     $dbhw = null;
     $dbh = null;
     if ($retorna === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
Example #6
0
function listaTemasRestritos()
{
    global $esquemaadmin;
    include_once dirname(__FILE__) . "/../admin/php/admin.php";
    error_reporting(0);
    $res = pegaDados("select id_grupo,codigo_tema from " . $esquemaadmin . "i3geousr_grupotema as gt," . $esquemaadmin . "i3geoadmin_temas as te where gt.id_tema = te.id_tema");
    $restritos = array();
    foreach ($res as $r) {
        if (in_array($r["codigo_tema"], $restritos)) {
            array_push($restritos[$r["codigo_tema"]], $r["id_grupo"]);
        } else {
            $restritos[$r["codigo_tema"]] = array($r["id_grupo"]);
        }
    }
    return $restritos;
}
Example #7
0
<?php

//para rodar, comente a linha abaixo
exit;
include "admin.php";
$dados = pegaDados("select * from " . $esquemaadmin . "i3geoadmin_log");
//["serializedata"]=> string(96) "a:5:{i:0;s:22:"administrador do i3geo";i:1;s:10:"admingeral";i:2;s:0:"";i:3;s:1:"1";i:4;s:0:"";}" ["usuario"]=> string(5) "admin" ["ip"]=> string(9) "127.0.0.1" ["timestamp"]=> string(43) "1458610085(Mon, 21 Mar 2016 22:28:05 -0300)" ["outros"]=> string(0) "" } }
foreach ($dados as $d) {
    echo "<b>id_log:</b> " . $d["id_log"] . "<br> \n";
    echo "timestamp = " . $d["timestamp"] . "<br> \n";
    echo "usuario = " . $d["usuario"] . "<br> \n";
    echo "ip = " . $d["ip"] . "<br> \n";
    echo "sql = " . $d["sql"] . "<br> \n";
    echo "dados = '" . implode("','", unserialize($d["serializedata"])) . "'<br> \n";
    echo "outros = " . $d["outros"] . "<br><br> \n";
}
Example #8
0
function registraTema()
{
    global $codigo_tema, $esquemaadmin;
    try {
        $retorna = "ok";
        include "conexao.php";
        $sql = "SELECT * from " . $esquemaadmin . "i3geoadmin_temas where codigo_tema = '{$codigo_tema}'";
        $dados = pegaDados($sql);
        if (count($dados) == 0) {
            $dataCol = array("tipoa_tema" => '', "nome_tema" => $codigo_tema, "codigo_tema" => $codigo_tema, "kml_tema" => 'SIM', "kmz_tema" => 'NAO', "ogc_tema" => 'SIM', "download_tema" => 'SIM', "tags_tema" => '', "link_tema" => '', "desc_tema" => '');
            i3GeoAdminInsert($dbhw, "i3geoadmin_temas", $dataCol);
        }
        $dbhw = null;
        $dbh = null;
        return "ok";
    } catch (PDOException $e) {
        return "Error!: ";
    }
}
Example #9
0
     exit;
     break;
 case "LISTAUNICO":
     $dados = pegaDados("SELECT id_tag, nome from " . $esquemaadmin . "i3geoadmin_tags WHERE id_tag = {$id_tag} ", $dbh, false);
     if ($dados === false) {
         $dbhw = null;
         $dbh = null;
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $dbhw = null;
     $dbh = null;
     retornaJSON($dados[0]);
     break;
 case "LISTA":
     $dados = pegaDados("SELECT id_tag, nome from " . $esquemaadmin . "i3geoadmin_tags order by lower(nome)", $dbh, false);
     if ($dados === false) {
         $dbhw = null;
         $dbh = null;
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $dbhw = null;
     $dbh = null;
     retornaJSON($dados);
     break;
 case "EXCLUIR":
     $retorna = excluir($id_tag, $dbhw);
     $dbhw = null;
     $dbh = null;
     if ($retorna === false) {
Example #10
0
     foreach ($temas as $tema) {
         $xml .= kml_tema_bd($tema);
     }
 }
 if ($idioma == "pt") {
     $coluna = "nome_subgrupo";
 } else {
     $coluna = $idioma;
 }
 $sql = "select s.{$coluna} as nome_subgrupo,n2.id_n2 from " . $esquemaadmin . "i3geoadmin_n2 as n2," . $esquemaadmin . "i3geoadmin_n1 as n1, " . $esquemaadmin . "i3geoadmin_subgrupos as s ";
 $sql .= "where n1.id_menu = '{$id_menu}' and n1.id_grupo = '{$id_grupo}' and n2.id_subgrupo = s.id_subgrupo ";
 $sql .= "and n2.id_n1 = n1.id_n1 ";
 $sql .= "and (n1.n1_perfil = '' or n1.n1_perfil is null) and (n2.n2_perfil = '' or n2.n2_perfil isnull) ";
 $sql .= "and (lower(n2.publicado) != 'nao' or n2.publicado is null) ";
 $sql .= "order by s.nome_subgrupo";
 $subgrupos = pegaDados($sql);
 //var_dump($subgrupos);
 if ($idioma == "pt") {
     $coluna = "nome_tema";
 } else {
     $coluna = $idioma;
 }
 foreach ($subgrupos as $subgrupo) {
     $id_n2 = $subgrupo["id_n2"];
     $sql = "select t.codigo_tema,t.{$coluna} as nome_tema,t.link_tema, t.desc_tema, t.kmz_tema from " . $esquemaadmin . "i3geoadmin_n3 as n3," . $esquemaadmin . "i3geoadmin_temas as t where ";
     $sql .= "n3.id_n2='{$id_n2}' ";
     $sql .= "and n3.id_tema = t.id_tema ";
     $sql .= "and (n3_perfil = '' or n3_perfil is null) ";
     $sql .= "and (lower(t.kml_tema) != 'nao' or t.kml_tema is null)";
     $sql .= "and (lower(t.tipoa_tema) != 'wms' or t.tipoa_tema is null)";
     $sql .= "and (lower(n3.publicado) != 'nao' or n3.publicado is null) ";
Example #11
0
     $dbh = null;
     if ($papeis === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     retornaJSON(array("operacao" => $operacao, "papeis" => $papeis));
     break;
 case "LISTA":
     $operacoes = pegaDados("SELECT id_operacao,codigo,descricao from " . $esquemaadmin . "i3geousr_operacoes order by codigo", $dbh, false);
     if ($operacoes === false) {
         $dbhw = null;
         $dbh = null;
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $papeis = pegaDados("SELECT * from " . $esquemaadmin . "i3geousr_papeis order by nome", $dbh);
     $dbhw = null;
     $dbh = null;
     if ($papeis === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     retornaJSON(array("operacoes" => $operacoes, "papeis" => $papeis));
     break;
 case "EXCLUIR":
     $retorna = excluir($id_operacao, $dbhw);
     $dbhw = null;
     $dbh = null;
     if ($retorna === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
Example #12
0
function alterar($id_menu, $publicado_menu, $perfil_menu, $aberto, $desc_menu, $nome_menu, $es, $en, $dbhw)
{
    global $convUTF, $esquemaadmin;
    if ($convUTF != true) {
        $nome_menu = utf8_decode($nome_menu);
        $desc_menu = utf8_decode($desc_menu);
        $en = utf8_decode($en);
        $es = utf8_decode($es);
        $perfil_menu = utf8_decode($perfil_menu);
    }
    $perfil_menu = str_replace(",", " ", trim($perfil_menu));
    //verifica a consistencia da lista de perfis
    $perfis = pegaDados("SELECT perfil from " . $esquemaadmin . "i3geoadmin_perfis order by perfil", $dbw, false);
    $p = array();
    foreach ($perfis as $perfil) {
        $p[] = $perfil["perfil"];
    }
    $perfil_menu = implode(" ", array_intersect(explode(" ", $perfil_menu), $p));
    $dataCol = array("en" => $en, "es" => $es, "it" => '', "publicado_menu" => $publicado_menu, "aberto" => $aberto, "nome_menu" => $nome_menu, "desc_menu" => $desc_menu, "perfil_menu" => $perfil_menu);
    $resultado = i3GeoAdminUpdate($dbhw, "i3geoadmin_menus", $dataCol, "WHERE id_menu = {$id_menu}");
    if ($resultado === false) {
        return false;
    }
    return $id_menu;
}
Example #13
0
function alterarGrupos()
{
    global $id_grupo;
    try {
        $nome = $_GET["nome"];
        $descricao = $_GET["descricao"];
        include dirname(__FILE__) . "/conexao.php";
        if ($convUTF) {
            $nome = utf8_encode($nome);
            $descricao = utf8_encode($descricao);
        }
        if ($id_grupo != "") {
            //verifica uniciade de login
            $dados = pegaDados("select nome from " . $esquemaadmin . "i3geousr_grupos where nome = '{$nome}'");
            if (count($dados) > 0) {
                $retorna = false;
            }
            $dataCol = array("nome" => $nome, "descricao" => $descricao);
            i3GeoAdminUpdate($dbhw, "i3geousr_grupos", $dataCol, "WHERE id_grupo = {$id_grupo}");
            $retorna = $id_grupo;
        } else {
            $dataCol = array("nome" => '', "descricao" => '');
            $retorna = i3GeoAdminInsertUnico($dbhw, "i3geousr_grupos", $dataCol, "nome", "id_grupo");
        }
        $dbhw = null;
        $dbh = null;
        return $retorna;
    } catch (PDOException $e) {
        return "Error!: ";
    }
}
Example #14
0
        retornaJSON(pegaDados("SELECT * from " . $esquemaadmin . "i3geousr_operacoes WHERE id_operacao = {$id_operacao}"));
        exit;
        break;
    case "ADICIONAPAPELOPERACOES":
        adicionaPapelOperacoes();
        $dados = pegaDados("SELECT P.id_papel, P.nome, P.descricao, OP.id_operacao FROM " . $esquemaadmin . "i3geousr_operacoes AS O JOIN " . $esquemaadmin . "i3geousr_operacoespapeis AS OP ON O.id_operacao = OP.id_operacao JOIN " . $esquemaadmin . "i3geousr_papeis AS P ON OP.id_papel = P.id_papel WHERE O.id_operacao = {$id_operacao} AND P.id_papel = {$id_papel}");
        retornaJSON($dados);
        exit;
        break;
    case "EXCLUIRPAPELOPERACAO":
        excluirPapelOperacao();
        retornaJSON("ok");
        exit;
        break;
    case "LISTAPAPEIS":
        retornaJSON(pegaDados("SELECT * from " . $esquemaadmin . "i3geousr_papeis order by nome"));
        exit;
        break;
}
cpjson($retorno);
function alterarOperacoes()
{
    global $id_operacao;
    try {
        include dirname(__FILE__) . "/conexao.php";
        if ($convUTF) {
            $_GET["descricao"] = utf8_encode($_GET["descricao"]);
        }
        if ($id_operacao != "") {
            $dataCol = array("codigo" => $_GET["codigo"], "descricao" => $_GET["descricao"]);
            i3GeoAdminUpdate($dbhw, "i3geousr_operacoes", $dataCol, "WHERE id_operacao = {$id_operacao}");
Example #15
0
         exit;
     }
     $novo = adicionar($id_menu, $id_tema, $_POST["ordem"], $_POST["perfil"], $dbhw);
     if ($novo === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     exit;
     break;
 case "ALTERAR":
     $novo = alterar($id_raiz, $id_tema, $_POST["ordem"], $_POST["perfil"], $dbhw);
     if ($novo === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $dados = pegaDados("SELECT id_raiz from " . $esquemaadmin . "i3geoadmin_raiz WHERE id_raiz = {$id_raiz}", $dbh, false);
     if ($dados === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $dbhw = null;
     $dbh = null;
     retornaJSON($dados);
     exit;
     break;
 case "EXCLUIR":
     $retorna = excluir($id_raiz, $dbhw);
     $dbhw = null;
     $dbh = null;
     if ($retorna === false) {
         header("HTTP/1.1 500 erro ao consultar banco de dados");
Example #16
0
function alterarUsuarios()
{
    global $id_usuario;
    try {
        include dirname(__FILE__) . "/conexao.php";
        if ($convUTF) {
            $_GET["nome_usuario"] = utf8_encode($_GET["nome_usuario"]);
        }
        if ($id_usuario != "") {
            //verifica uniciade de login
            $dados = pegaDados("select login from " . $esquemaadmin . "i3geousr_usuarios where login = '******'");
            if (count($dados) > 0) {
                $retorna = false;
            }
            $dataCol = array("nome_usuario" => $_GET["nome_usuario"], "login" => $_GET["login"], "email" => $_GET["email"], "ativo" => $_GET["ativo"], "data_cadastro" => $_GET["data_cadastro"]);
            //se a senha foi enviada, ela sera trocada
            if ($_GET["senha"] != "") {
                //$dataCol["senha"] = md5($_GET["senha"]);
                $dataCol["senha"] = password_hash($_GET["senha"], PASSWORD_DEFAULT);
            }
            i3GeoAdminUpdate($dbhw, "i3geousr_usuarios", $dataCol, "WHERE id_usuario = {$id_usuario}");
            $retorna = $id_usuario;
        } else {
            $dataCol = array("nome_usuario" => '', "login" => '', "email" => '', "ativo" => 0, "data_cadastro" => '', "senha" => '');
            $retorna = i3GeoAdminInsertUnico($dbhw, "i3geousr_usuarios", $dataCol, "nome_usuario", "id_usuario");
        }
        $dbhw = null;
        $dbh = null;
        return $retorna;
    } catch (PDOException $e) {
        return "Error!: ";
    }
}
Example #17
0
        break;
    case "LISTA":
        $dados = pegaDados("SELECT * from " . $esquemaadmin . "i3geoadmin_sistemas ORDER BY lower(nome_sistema)", $dbh, false);
        if ($dados === false) {
            $dbhw = null;
            $dbh = null;
            header("HTTP/1.1 500 erro ao consultar banco de dados tabela de atlas");
            exit;
        }
        $perfis = pegaDados("SELECT id_perfil, perfil from " . $esquemaadmin . "i3geoadmin_perfis order by perfil", $dbh, false);
        $dbhw = null;
        $dbh = null;
        retornaJSON(array("dados" => $dados, "perfis" => $perfis));
        break;
    case "EXCLUIR":
        $funcoes = pegaDados("SELECT id_sistema from " . $esquemaadmin . "i3geoadmin_sistemasf where id_sistema = '{$id_sistema}'");
        if (count($funcoes) > 0) {
            header("HTTP/1.1 500 erro ao excluir. Exclua as funcoes do sistema primeiro");
            exit;
        }
        $retorna = excluir($id_sistema, $dbhw);
        $dbhw = null;
        $dbh = null;
        if ($retorna === false) {
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        retornaJSON($id_sistema);
        exit;
        break;
}
Example #18
0
        retornaJSON($dados[0]);
        break;
    case "LISTA":
        $dados = pegaDados("SELECT id_subgrupo,nome_subgrupo from " . $esquemaadmin . "i3geoadmin_subgrupos order by lower(nome_subgrupo)", $dbh, false);
        if ($dados === false) {
            $dbhw = null;
            $dbh = null;
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        $dbhw = null;
        $dbh = null;
        retornaJSON($dados);
        break;
    case "EXCLUIR":
        $r = pegaDados("select n2.id_subgrupo from " . $esquemaadmin . "i3geoadmin_n3 as n3, " . $esquemaadmin . "i3geoadmin_n2 as n2 where n2.id_n2 = n3.id_n3 and n2.id_subgrupo = '{$id}'");
        if (count($r) > 0) {
            header("HTTP/1.1 500 erro ao excluir. O grupo esta em uso");
            exit;
        }
        $retorna = excluir($id_subgrupo, $dbhw);
        $dbhw = null;
        $dbh = null;
        if ($retorna === false) {
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        retornaJSON($id_subgrupo);
        exit;
        break;
}
Example #19
0
 abrir_i
 
 nome_i
 
 target_i
 
 publicado_i
 
 Retorno:
 
 {JSON}
 */
 case "ALTERARFUNCOES":
     $novo = alterarFuncoes();
     $sql = "SELECT * from " . $esquemaadmin . "i3geoadmin_identifica WHERE id_i = '" . $novo . "'";
     retornaJSON(pegaDados($sql));
     exit;
     break;
     /*
     Valor: EXCLUIR
     
     Exclui uma opera&ccedil;&atilde;o cadastrada
     
     Parametros:
     
     id - id da op&ccedil;&atilde;o
     
     Retorno:
     
     {JSON}
     */
Example #20
0
function verificaFilhos()
{
    global $tabela, $id, $esquemaadmin;
    try {
        $res = false;
        if ($tabela == "i3geoestat_mapa_grupo") {
            $grupo = pegaDados("select * from " . $esquemaadmin . "i3geoestat_mapa_tema where id_mapa_grupo={$id}");
            if (count($grupo) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoestat_mapa") {
            $grupo = pegaDados("select * from " . $esquemaadmin . "i3geoestat_mapa_grupo where id_mapa={$id}");
            if (count($grupo) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoestat_classificacao") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoestat_classes where id_classificacao={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoestat_conexao") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoestat_medida_variavel where codigo_estat_conexao={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoestat_tipo_periodo") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoestat_medida_variavel where codigo_tipo_periodo={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoestat_unidade_medida") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoestat_medida_variavel where codigo_unidade_medida={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoestat_fonteinfo") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoestat_fonteinfo_medida where id_fonteinfo={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoestat_variavel") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoestat_medida_variavel where codigo_variavel={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoestat_medida_variavel") {
            $link = pegaDados("select * from " . $esquemaadmin . "i3geoestat_medida_variavel_link where id_medida_variavel={$id}");
            $parametro = pegaDados("select * from " . $esquemaadmin . "i3geoestat_parametro_medida where id_medida_variavel={$id}");
            $fonte = pegaDados("select * from " . $esquemaadmin . "i3geoestat_fonteinfo_medida where id_medida_variavel={$id}");
            if (count($link) > 0 || count($parametro) > 0 || count($fonte) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_n2") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoadmin_n3 where id_n2={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geousr_grupos") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geousr_gruposusuario where id_grupo={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geousr_usuarios") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geousr_papelusuario where id_usuario={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_n1") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoadmin_n2 where id_n1={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_menus") {
            $r = pegaDados("select * from " . $esquemaadmin . "i3geoadmin_n1 where id_menu={$id}");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_grupos") {
            $r = pegaDados("select n1.id_grupo from " . $esquemaadmin . "i3geoadmin_n1 as n1, " . $esquemaadmin . "i3geoadmin_n2 as n2 where n1.id_n1 = n2.id_n1 and n1.id_grupo = '{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_subgrupos") {
            $r = pegaDados("select n2.id_subgrupo from " . $esquemaadmin . "i3geoadmin_n3 as n3, " . $esquemaadmin . "i3geoadmin_n2 as n2 where n2.id_n2 = n3.id_n3 and n2.id_subgrupo = '{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_temas") {
            $r = pegaDados("select id_tema from " . $esquemaadmin . "i3geoadmin_n3 where id_tema = '{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_sistemas") {
            $r = pegaDados("SELECT id_sistema from " . $esquemaadmin . "i3geoadmin_sistemasf where id_sistema ='{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_atlas") {
            $r = pegaDados("SELECT id_atlas from " . $esquemaadmin . "i3geoadmin_atlasp where id_atlas ='{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_atlasp") {
            $r = pegaDados("SELECT id_prancha from " . $esquemaadmin . "i3geoadmin_atlast where id_prancha ='{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_n2") {
            $r = pegaDados("SELECT id_n3 from " . $esquemaadmin . "i3geoadmin_n3 where id_n2 ='{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "i3geoadmin_n1") {
            $r = pegaDados("SELECT id_n2 from " . $esquemaadmin . "i3geoadmin_n2 where id_n1 ='{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
            $r = pegaDados("SELECT id_raiz from " . $esquemaadmin . "i3geoadmin_raiz where nivel='1' and id_nivel ='{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        if ($tabela == "mapfiles") {
            $r = pegaDados("SELECT id_tema from " . $esquemaadmin . "i3geoadmin_n3 where id_tema ='{$id}'");
            if (count($r) > 0) {
                $res = true;
            }
        }
        return $res;
    } catch (PDOException $e) {
        return "Error!: ";
    }
}
Example #21
0
     exit;
     break;
 case "LISTAUNICO":
     $dados = pegaDados("SELECT * from " . $esquemaadmin . "i3geoadmin_n3 LEFT JOIN " . $esquemaadmin . "i3geoadmin_temas ON i3geoadmin_n3.id_tema = i3geoadmin_temas.id_tema where id_n3 = {$id_n3}");
     if ($dados === false) {
         $dbhw = null;
         $dbh = null;
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $dbhw = null;
     $dbh = null;
     retornaJSON($dados[0]);
     break;
 case "LISTA":
     $perfis = pegaDados("SELECT id_perfil, perfil from " . $esquemaadmin . "i3geoadmin_perfis order by lower(perfil)", $dbh, false);
     $dbhw = null;
     $dbh = null;
     include $locaplic . "/admin/php/classe_arvore.php";
     $arvore = new Arvore($locaplic);
     $temassubgrupo = array("dados" => $arvore->pegaTemasSubGrupo($id_n2));
     $temas = $arvore->pegaTodosTemas(true);
     unset($arvore);
     $temassubgrupo["perfis"] = $perfis;
     $temassubgrupo["temas"] = $temas;
     retornaJSON($temassubgrupo);
     break;
 case "EXCLUIR":
     $retorna = excluir($id_n3, $dbhw);
     $dbhw = null;
     $dbh = null;
Example #22
0
function lista($dbh, $filtro = "", $palavra = "", $validar = "")
{
    global $convUTF, $locaplic, $esquemaadmin;
    $arquivos = array();
    if (is_dir($locaplic . "/temas")) {
        if ($dh = opendir($locaplic . "/temas")) {
            while (($file = readdir($dh)) !== false) {
                if (!stristr($file, '.map') === FALSE) {
                    $file = str_replace(".map", "", $file);
                    // verifica se existe um filtro de palavra
                    if ($palavra != "") {
                        if (stripos($file, $palavra) !== false) {
                            $arquivos[] = array("nome" => $file);
                        }
                    } else {
                        $arquivos[] = array("nome" => $file);
                    }
                }
            }
        }
        closedir($dh);
    }
    sort($arquivos);
    //
    // pega o nome de cada tema filtrando a listagem se for o caso
    //
    $regs = pegaDados("select * from " . $esquemaadmin . "i3geoadmin_temas ", $dbh, false);
    $nomes = array();
    $ids = array();
    $dadosBanco = array();
    foreach ($regs as $reg) {
        if ($convUTF != true) {
            $reg["nome_tema"] = utf8_decode($reg["nome_tema"]);
        }
        $nomes[$reg["codigo_tema"]] = $reg["nome_tema"];
        $ids[$reg["codigo_tema"]] = $reg["id_tema"];
        $dadosBanco[$reg["id_tema"]] = $reg;
    }
    $lista = array();
    foreach ($arquivos as $arq) {
        $arq = $arq["nome"];
        $nT = explode(".", $arq);
        $n = $nomes[$nT[0]];
        if (!$n) {
            $n = "";
        }
        $id = $ids[$nT[0]];
        //o mapfile nao esta registrado no banco
        if (!$id && empty($validar)) {
            $id = "";
        } else {
            //aplica as validacoes. Se nao passar na validacao $id ficara vazio, para nao mostrar no resultado final
            switch ($validar) {
                case 1:
                    if ($dadosBanco[$id]["link_tema"] !== "") {
                        $id = "";
                    }
                    break;
                case 2:
                    if ($dadosBanco[$id]["nome_tema"] == "") {
                        $id = "-";
                    } else {
                        $id = "";
                    }
                    break;
                case 3:
                    if ($dadosBanco[$id]["nome_tema"] == "") {
                        $id = "";
                    }
                    break;
                case 4:
                    if (strtolower($dadosBanco[$id]["download_tema"]) !== "sim") {
                        $id = "";
                    }
                    break;
                case 5:
                    if (strtolower($dadosBanco[$id]["download_tema"]) !== "nao") {
                        $id = "";
                    }
                    break;
                case 6:
                    if (strtolower($dadosBanco[$id]["ogc_tema"]) !== "sim") {
                        $id = "";
                    }
                    break;
                case 7:
                    if (strtolower($dadosBanco[$id]["ogc_tema"]) !== "nao") {
                        $id = "";
                    }
                    break;
                case 8:
                    if (strtolower($dadosBanco[$id]["kml_tema"]) !== "sim") {
                        $id = "";
                    }
                    break;
                case 9:
                    if (strtolower($dadosBanco[$id]["kml_tema"]) !== "nao") {
                        $id = "";
                    }
                    break;
                case 10:
                    if (strtolower($dadosBanco[$id]["kmz_tema"]) !== "sim") {
                        $id = "";
                    }
                    break;
                case 11:
                    if (strtolower($dadosBanco[$id]["kmz_tema"]) !== "nao") {
                        $id = "";
                    }
                    break;
            }
        }
        $imagem = "";
        if (file_exists($locaplic . "/temas/miniaturas/" . $arq . ".map.mini.png")) {
            $imagem = $arq . ".map.mini.png";
        }
        if ($validar == 12) {
            if (file_exists($locaplic . "/temas/" . $arq . ".map")) {
                $handle = fopen($locaplic . "/temas/" . $arq . ".map", "r");
                while (!feof($handle)) {
                    $linha = fgets($handle);
                    if (stripos($linha, "'TEMA'") !== false || stripos($linha, '"TEMA"') !== false) {
                        $ntema = str_replace(array("'TEMA'", '"TEMA"', "'tema'", '"tema"'), "", $linha);
                        $ntema = trim(str_replace(array("'", '"'), "", $ntema));
                        $temp = $n;
                        if ($n != $ntema && utf8_decode($temp) != $ntema && $n != "") {
                            $n .= "<span style=color:red;margin-left:5px >" . utf8_encode($ntema) . "</span>";
                        } else {
                            $n .= "<span style=color:lightslategray;margin-left:5px >" . utf8_encode($ntema) . "</span>";
                        }
                        break;
                    }
                }
                fclose($handle);
            }
        }
        if ($validar == 13) {
            if (file_exists($locaplic . "/temas/" . $arq . ".map")) {
                $handle = fopen($locaplic . "/temas/" . $arq . ".map", "r");
                // deve buscar dentro de LAYER pois pode haver simbolos antes
                $elayer = false;
                while (!feof($handle)) {
                    $linha = trim(fgets($handle));
                    if (stripos($linha, "LAYER") === 0) {
                        $elayer = true;
                    }
                    if ($elayer == true && stripos($linha, "NAME") === 0) {
                        $ntema = ltrim($linha, "NAMEname");
                        $ntema = trim(str_replace(array("'", '"'), "", $ntema));
                        if ($arq != $ntema) {
                            $n .= "<span style=color:red;margin-left:5px >" . $ntema . "</span>";
                        }
                        break;
                    }
                }
                fclose($handle);
            }
        }
        //se id for vazio, nao consta no banco, por isso, se validar for definido, nao pode ser aplicado
        if (empty($validar) || !empty($validar) && $id != "") {
            $lista[] = array("id_tema" => $id, "nome" => $n, "codigo" => $arq, "imagem" => $imagem, "extensao" => "");
        }
    }
    return $lista;
}
Example #23
0
        retornaJSON($dados[0]);
        break;
    case "LISTA":
        $dados = pegaDados("SELECT id_grupo,nome_grupo from " . $esquemaadmin . "i3geoadmin_grupos order by lower(nome_grupo)", $dbh, false);
        if ($dados === false) {
            $dbhw = null;
            $dbh = null;
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        $dbhw = null;
        $dbh = null;
        retornaJSON($dados);
        break;
    case "EXCLUIR":
        $r = pegaDados("select n1.id_grupo from " . $esquemaadmin . "i3geoadmin_n1 as n1, " . $esquemaadmin . "i3geoadmin_n2 as n2 where n1.id_n1 = n2.id_n1 and n1.id_grupo = '{$id_grupo}'");
        if (count($r) > 0) {
            header("HTTP/1.1 500 erro ao excluir. O grupo esta em uso");
            exit;
        }
        $retorna = excluir($id_grupo, $dbhw);
        $dbhw = null;
        $dbh = null;
        if ($retorna === false) {
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        retornaJSON($id_grupo);
        exit;
        break;
}
Example #24
0
function alterarConexao()
{
    global $esquemaadmin, $dir_tmp, $codigoMap, $codigoLayer, $locaplic;
    if ($_GET["data"] != "") {
        $_GET["data"] = base64_decode($_GET["data"]);
    }
    $mapfile = $locaplic . "/temas/" . $codigoMap . ".map";
    $mapa = ms_newMapObj($mapfile);
    $layer = $mapa->getlayerbyname($codigoLayer);
    //quando o layer estiver conectado com o METAESTAT, alguns parametros sao default
    include "conexao.php";
    //e necessario atualizar o banco de dados de administracao, por isso e feito a verificacao do registro ou nao do mapfile no banco
    $sql = "SELECT * from " . $esquemaadmin . "i3geoadmin_temas where codigo_tema = '{$codigoMap}'";
    $dados = pegaDados($sql);
    if (count($dados) == 0) {
        $dataCol = array("tipoa_tema" => "META", "nome_tema" => $codigoMap, "codigo_tema" => $codigoMap, "kml_tema" => "SIM", "kmz_tema" => "NAO", "ogc_tema" => "SIM", "download_tema" => "SIM", "tags_tema" => "", "link_tema" => "", "desc_tema" => "");
        i3GeoAdminInsert($dbhw, "i3geoadmin_temas", $dataCol);
    }
    if (strtoupper($metaestat) == "SIM") {
        $_GET["connectiontype"] = 6;
        $_GET["filteritem"] = "";
        $_GET["filter"] = "";
        $_GET["data"] = "";
        $_GET["connection"] = "";
        $dataCol = array("tipoa_tema" => "META");
        i3GeoAdminUpdate($dbhw, "i3geoadmin_temas", $dataCol, "WHERE codigo_tema = '{$codigoMap}'");
        $layer->setmetadata("metaestat", "SIM");
        $layer->setmetadata("METAESTAT_ID_MEDIDA_VARIAVEL", $_GET["metaestat_id_medida_variavel"]);
    } else {
        $layer->setmetadata("METAESTAT_CODIGO_TIPO_REGIAO", "");
        $layer->setmetadata("METAESTAT_ID_MEDIDA_VARIAVEL", "");
        $layer->setmetadata("metaestat", "");
        $dataCol = array("tipoa_tema" => "");
        i3GeoAdminUpdate($dbhw, "i3geoadmin_temas", $dataCol, "WHERE codigo_tema = '{$codigoMap}'");
    }
    $layer->set("connection", $_GET["connection"]);
    if (ms_GetVersionInt() > 50201) {
        $layer->setconnectiontype($_GET["connectiontype"]);
    } else {
        $layer->set("connectiontype", $_GET["connectiontype"]);
    }
    $layer->set("data", $_GET["data"]);
    $layer->set("tileitem", $_GET["tileitem"]);
    $layer->set("tileindex", $_GET["tileindex"]);
    $layer->set("type", $_GET["type"]);
    if ($_GET["type"] == 0) {
        $c = $layer->getClass(0);
        $e = $c->getStyle(0);
        if ($e->symbolname == "") {
            $e->set("symbolname", "ponto");
        }
    }
    if ($_GET["type"] == 1) {
        $c = $layer->getClass(0);
        $e = $c->getStyle(0);
        if ($e->symbolname == "" || $e->symbolname == "ponto") {
            $e->set("symbolname", "linha");
        }
    }
    if ($_GET["type"] == 2) {
        $c = $layer->getClass(0);
        $e = $c->getStyle(0);
        if ($e->symbolname == "linha" || $e->symbolname == "ponto") {
            $e->set("symbolname", " ");
        }
    }
    $layer->setfilter($_GET["filter"]);
    $layer->set("filteritem", $_GET["filteritem"]);
    if ($layer->getprojection() == MS_TRUE) {
        $layer->setprojection($_GET["projection"]);
    }
    if ($layer->getprojection() == MS_FALSE && $_GET["projection"] != "") {
        $layer->setprojection($_GET["projection"]);
    }
    if ($layer->connectiontype == 7 || $layer->connectiontype == 9) {
        $layer->setmetadata("tipooriginal", $_GET["tipooriginal"]);
    }
    $layer->setmetadata("cache", $_GET["cache"]);
    $layer->setmetadata("tiles", $_GET["tiles"]);
    if ($_GET["cortepixels"] == "") {
        $_GET["cortepixels"] = 0;
    }
    $layer->setmetadata("cortepixels", $_GET["cortepixels"]);
    $layer->setmetadata("convcaracter", $_GET["convcaracter"]);
    if ($_GET["testar"] == "true") {
        $nome = $dir_tmp . "/" . $codigoMap . ".map";
        $mapa->save($nome);
        removeCabecalho($nome, true);
        return $nome;
    } else {
        $mapa->save($mapfile);
        removeCabecalho($mapfile);
        return "ok";
    }
}
Example #25
0
        if (file_exists($locaplic . "/temas/" . $codigo . ".map")) {
            $sql = "\n\t\t\t\tselect " . $esquemaadmin . "i3geoadmin_temas.codigo_tema, " . $esquemaadmin . "i3geousr_grupos.id_grupo,\n\t\t\t\t" . $esquemaadmin . "i3geousr_grupos.nome, " . $esquemaadmin . "i3geousr_grupos.descricao,\n\t\t\t\t" . $esquemaadmin . "i3geousr_grupotema.id_tema\n\t\t\t\tfrom\n\t\t\t\t" . $esquemaadmin . "i3geoadmin_temas\n\t\t\t\tjoin " . $esquemaadmin . "i3geousr_grupotema\n\t\t\t\ton " . $esquemaadmin . "i3geousr_grupotema.id_grupo = " . $esquemaadmin . "i3geousr_grupos.id_grupo\n\t\t\t\tjoin " . $esquemaadmin . "i3geousr_grupos\n\t\t\t\ton " . $esquemaadmin . "i3geoadmin_temas.id_tema = " . $esquemaadmin . "i3geousr_grupotema.id_tema\n\t\t\t\twhere codigo_tema = '" . $codigo . "' order by lower(nome)\n\t\t\t";
            $dados = pegaDados($sql, $dbh, false);
        } else {
            $dbhw = null;
            $dbh = null;
            header("HTTP/1.1 500 erro mapfile nao existe");
            exit;
        }
        if ($dados === false) {
            $dbhw = null;
            $dbh = null;
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        $grupos = pegaDados("select * from " . $esquemaadmin . "i3geousr_grupos order by lower(nome)", $dbh, false);
        $dbhw = null;
        $dbh = null;
        retornaJSON(array("dados" => $dados, "grupos" => $grupos));
        break;
    case "EXCLUIR":
        $retorna = excluir($id_tema, $id_grupo, $dbhw);
        $dbhw = null;
        $dbh = null;
        if ($retorna === false) {
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        retornaJSON("ok");
        break;
}
Example #26
0
function dadosAtlas()
{
    global $id_atlas, $esquemaadmin;
    if ($id_atlas == "") {
        $sis = pegaDados('SELECT * from ' . $esquemaadmin . 'i3geoadmin_atlas order by titulo_atlas');
    } else {
        $sis = pegaDados("SELECT * from " . $esquemaadmin . "i3geoadmin_atlas where id_atlas = '{$id_atlas}' ");
    }
    for ($i = 0; $i < count($sis); ++$i) {
        $pranchas = pegaDados("SELECT * from " . $esquemaadmin . "i3geoadmin_atlasp where id_atlas =" . $sis[$i]["id_atlas"]);
        for ($j = 0; $j < count($pranchas); ++$j) {
            $temas = pegaDados("SELECT * from " . $esquemaadmin . "i3geoadmin_atlast where id_prancha =" . $pranchas[$j]["id_prancha"]);
            if (count($temas) > 0) {
                $pranchas[$j]["temas"] = $temas;
            } else {
                $pranchas[$j]["temas"] = "";
            }
        }
        if (count($pranchas) > 0) {
            $sis[$i]["pranchas"] = $pranchas;
        } else {
            $sis[$i]["pranchas"] = "";
        }
    }
    return $sis;
}
Example #27
0
function autenticaUsuario($usuario, $senha)
{
    include dirname(__FILE__) . "/conexao.php";
    $senhamd5 = md5($senha);
    $senhaHash = password_hash($senha, PASSWORD_DEFAULT);
    //faz um teste de tentativas de acesso
    $nomeArquivo = $dir_tmp . "/a" . md5($usuario . "testeTentativas") . intval(time() / 1000);
    if (!file_exists($dir_tmp)) {
        return false;
    }
    if (file_exists($nomeArquivo)) {
        $tentativas = (int) file_get_contents($nomeArquivo);
        if ($tentativas > 3) {
            return "muitas tentativas";
        }
        $tentativas = $tentativas + 1;
        file_put_contents($nomeArquivo, $tentativas);
    } else {
        file_put_contents($nomeArquivo, 1);
    }
    //verifica se o usuario esta cadastrado no ms_configura.php em $i3geomaster
    //echo "select * from ".$esquemaadmin."i3geousr_usuarios where login = '******' and (senha = '$senhamd5' or senha = '$senha') and ativo = 1";exit;
    //exit;
    if (verificaMaster($usuario, $senha) == true) {
        $pa = pegaDados("select * from " . $esquemaadmin . "i3geousr_papelusuario ", $dbh, false);
        $op = pegadados("SELECT O.codigo FROM " . $esquemaadmin . "i3geousr_operacoes AS O", $dbh, false);
        $gr = pegadados("SELECT * from " . $esquemaadmin . "i3geousr_grupos ", $dbh, false);
        //var_dump($gr);exit;
        $operacoes = array();
        foreach ($op as $o) {
            $operacoes[$o["codigo"]] = true;
        }
        $papeis = array();
        foreach ($pa as $p) {
            $papeis[] = $p["id_papel"];
        }
        $gruposusr = array();
        foreach ($gr as $p) {
            $gruposusr[] = $p["id_grupo"];
        }
        $master = array();
        $master["id_usuario"] = "master";
        $master["nome_usuario"] = "master";
        $r = array("usuario" => $master, "papeis" => $papeis, "operacoes" => $operacoes, "gruposusr" => $gruposusr);
        $dbh = null;
        $dbhw = null;
        file_put_contents($nomeArquivo, 1);
        return $r;
    } else {
        //verifica se a senha e uma string ou pode ser um md5
        $ok = false;
        $dados = array();
        if (strlen($senha) == 32) {
            $dados = pegaDados("select id_usuario,nome_usuario from " . $esquemaadmin . "i3geousr_usuarios where login = '******' and senha = '{$senhamd5}' and ativo = 1", $dbh, false);
        } else {
            $dados = pegaDados("select id_usuario,nome_usuario from " . $esquemaadmin . "i3geousr_usuarios where login = '******' and (senha = '{$senhamd5}' or senha = '{$senha}') and ativo = 1", $dbh, false);
        }
        if (count($dados) > 0) {
            $ok = true;
        }
        //testa tambem com a nova forma de armazenamento de senha usando password_hash
        if ($ok == false) {
            $usuarios = pegaDados("select senha,id_usuario,nome_usuario from " . $esquemaadmin . "i3geousr_usuarios where login = '******' and ativo = 1", $dbh, false);
            foreach ($usuarios as $d) {
                if (password_verify($d["senha"], $senhaHash)) {
                    $ok = true;
                    $dados = array("id_usuario" => $d["id_usuario"], "nome_usuario" => $d["nome_usuario"]);
                }
            }
            $usuarios = null;
        }
        if ($ok == true) {
            $pa = pegaDados("select * from " . $esquemaadmin . "i3geousr_papelusuario where id_usuario = " . $dados[0]["id_usuario"], $dbh, false);
            $op = pegadados("SELECT O.codigo, PU.id_usuario FROM " . $esquemaadmin . "i3geousr_operacoes AS O JOIN " . $esquemaadmin . "i3geousr_operacoespapeis AS OP ON O.id_operacao = OP.id_operacao JOIN " . $esquemaadmin . "i3geousr_papelusuario AS PU ON OP.id_papel = PU.id_papel\tWHERE id_usuario = " . $dados[0]["id_usuario"], $dbh, false);
            $gr = pegadados("SELECT * from " . $esquemaadmin . "i3geousr_grupousuario where id_usuario = " . $dados[0]["id_usuario"], $dbh, false);
            $operacoes = array();
            foreach ($op as $o) {
                $operacoes[$o["codigo"]] = true;
            }
            $papeis = array();
            foreach ($pa as $p) {
                $papeis[] = $p["id_papel"];
            }
            $gruposusr = array();
            foreach ($gr as $p) {
                $gruposusr[] = $p["id_grupo"];
            }
            $r = array("usuario" => $dados[0], "papeis" => $papeis, "operacoes" => $operacoes, "gruposusr" => $gruposusr);
            $dbh = null;
            $dbhw = null;
            file_put_contents($nomeArquivo, 1);
            return $r;
        } else {
            $dbh = null;
            $dbhw = null;
            return false;
        }
    }
}
Example #28
0
        retornaJSON(array("dados" => $dados[0]));
        break;
    case "LISTA":
        $dados = pegaDados("SELECT id_atlas, titulo_atlas, ordem_atlas from " . $esquemaadmin . "i3geoadmin_atlas ORDER BY lower(titulo_atlas), ordem_atlas", $dbh, false);
        if ($dados === false) {
            $dbhw = null;
            $dbh = null;
            header("HTTP/1.1 500 erro ao consultar banco de dados tabela de atlas");
            exit;
        }
        $dbhw = null;
        $dbh = null;
        retornaJSON(array("dados" => $dados));
        break;
    case "EXCLUIR":
        $pranchas = pegaDados("SELECT id_prancha from " . $esquemaadmin . "i3geoadmin_atlasp where id_atlas = '{$id_atlas}'");
        if (count($pranchas) > 0) {
            header("HTTP/1.1 500 erro ao excluir. Exclua as pranchas do atlas primeiro");
            exit;
        }
        $retorna = excluir($id_atlas, $dbhw);
        $dbhw = null;
        $dbh = null;
        if ($retorna === false) {
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        retornaJSON($id_atlas);
        exit;
        break;
}
Example #29
0
     exit;
     break;
 case "LISTAUNICO":
     $d = pegaDados("SELECT id_i, publicado_i, abrir_i, nome_i, target_i from " . $esquemaadmin . "i3geoadmin_identifica WHERE id_i = {$id_i}", $dbh, false);
     if ($d === false) {
         $dbhw = null;
         $dbh = null;
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $dbhw = null;
     $dbh = null;
     retornaJSON($d[0]);
     break;
 case "LISTA":
     $d = pegaDados("SELECT id_i, nome_i from " . $esquemaadmin . "i3geoadmin_identifica order by lower(nome_i)", $dbh, false);
     if ($d === false) {
         $dbhw = null;
         $dbh = null;
         header("HTTP/1.1 500 erro ao consultar banco de dados");
         exit;
     }
     $dbhw = null;
     $dbh = null;
     retornaJSON($d);
     break;
 case "EXCLUIR":
     $retorna = excluir($id_i, $dbhw);
     $dbhw = null;
     $dbh = null;
     if ($retorna === false) {
Example #30
0
        retornaJSON(array("dados" => $dados[0]));
        break;
    case "LISTA":
        $dados = pegaDados("SELECT id_atlas, id_prancha, titulo_prancha from " . $esquemaadmin . "i3geoadmin_atlasp WHERE id_atlas = '{$id_atlas}' ORDER by ordem_prancha", $dbh, false);
        if ($dados === false) {
            $dbhw = null;
            $dbh = null;
            header("HTTP/1.1 500 erro ao consultar banco de dados tabela de pranchas");
            exit;
        }
        $dbhw = null;
        $dbh = null;
        retornaJSON(array("dados" => $dados));
        break;
    case "EXCLUIR":
        $temas = pegaDados("SELECT id_tema from " . $esquemaadmin . "i3geoadmin_atlast where id_prancha = '{$id_prancha}'");
        if (count($temas) > 0) {
            header("HTTP/1.1 500 erro ao excluir. Exclua os temas da prancha primeiro");
            exit;
        }
        $retorna = excluir($id_prancha, $dbhw);
        $dbhw = null;
        $dbh = null;
        if ($retorna === false) {
            header("HTTP/1.1 500 erro ao consultar banco de dados");
            exit;
        }
        retornaJSON($id_prancha);
        exit;
        break;
}