diff --git a/admin/php/subirshapefile.php b/admin/php/subirshapefile.php index 849e0d7..c5009cf 100755 --- a/admin/php/subirshapefile.php +++ b/admin/php/subirshapefile.php @@ -1,23 +1,19 @@ @@ -32,216 +28,158 @@ if (ob_get_level() == 0) ob_start(); Carregando o arquivo...

"; - ob_flush(); - flush(); - sleep(1); - if(isset($map_file) && $map_file != ""){ - $mapa = ms_newMapObj($map_file); - $dirmap = dirname($map_file); - } - if(isset($dirDestino) && $dirDestino != ""){ - $dirmap = $dirDestino; - include_once(dirname(__FILE__)."/../../admin/php/login.php"); - if(verificaOperacaoSessao("admin/php/editortexto") == false){ - echo "Vc nao pode salvar os dados no servidor em uma pasta específica";exit; - } - if(!file_exists($dirmap)) - {echo "

Pasta não existe no servidor";paraAguarde();exit;} - } - //verifica nomes - verificaNome($_FILES['i3GEOuploadshp']['name']); - verificaNome($_FILES['i3GEOuploadshx']['name']); - verificaNome($_FILES['i3GEOuploaddbf']['name']); + echo "

Carregando o arquivo...

"; + ob_flush(); + flush(); + sleep(1); + $dirmap = $dirDestino; + if(!file_exists($dirmap)){ + echo "

Pasta não existe no servidor"; + paraAguarde(); + exit; + } + //verifica nomes + verificaNome($_FILES['i3GEOuploadshp']['name']); + verificaNome($_FILES['i3GEOuploadshx']['name']); + verificaNome($_FILES['i3GEOuploaddbf']['name']); - if($_FILES['i3GEOuploadprj']['name'] != ""){ - verificaNome($_FILES['i3GEOuploadprj']['name']); - } + if($_FILES['i3GEOuploadprj']['name'] != ""){ + verificaNome($_FILES['i3GEOuploadprj']['name']); + } - //remove acentos - $nomePrefixo = str_replace(" ","_",removeAcentos(str_replace(".shp","",$_FILES['i3GEOuploadshp']['name']))); + //remove acentos + $nomePrefixo = str_replace(" ","_",removeAcentos(str_replace(".shp","",$_FILES['i3GEOuploadshp']['name']))); - $nomePrefixo = str_replace(".","",$nomePrefixo); - $nomePrefixo = strip_tags($nomePrefixo); - $nomePrefixo = htmlspecialchars($nomePrefixo, ENT_QUOTES); - $nomePrefixo = $nomePrefixo . md5(uniqid(rand(), true)); + $nomePrefixo = str_replace(".","",$nomePrefixo); + $nomePrefixo = strip_tags($nomePrefixo); + $nomePrefixo = htmlspecialchars($nomePrefixo, ENT_QUOTES); - //sobe arquivo - $Arquivo = $_FILES['i3GEOuploadshp']['tmp_name']; - if(file_exists($dirmap."/".$nomePrefixo.".shp")) - {echo "

Já existe um SHP com o nome ";paraAguarde();exit;} - $status = move_uploaded_file($Arquivo,$dirmap."/".$nomePrefixo.".shp"); - if($status != 1) - {echo "

Ocorreu um erro no envio do arquivo SHP. Pode ser uma limitação quanto ao tamanho do arquivo ou permissão de escrita na pasta indicada.";paraAguarde();exit;} + //sobe arquivo + $Arquivo = $_FILES['i3GEOuploadshp']['tmp_name']; + if(file_exists($dirmap."/".$nomePrefixo.".shp")){ + echo "

Já existe um SHP com o nome "; + paraAguarde(); + exit; + } + $status = move_uploaded_file($Arquivo,$dirmap."/".$nomePrefixo.".shp"); + if($status != 1) + {echo "

Ocorreu um erro no envio do arquivo SHP. Pode ser uma limitação quanto ao tamanho do arquivo ou permissão de escrita na pasta indicada.";paraAguarde();exit;} - $Arquivo = $_FILES['i3GEOuploadshx']['tmp_name']; - $status = move_uploaded_file($Arquivo,$dirmap."/".$nomePrefixo.".shx"); - if($status != 1) - {echo "

Ocorreu um erro no envio do arquivo SHX";paraAguarde();exit;} + $Arquivo = $_FILES['i3GEOuploadshx']['tmp_name']; + $status = move_uploaded_file($Arquivo,$dirmap."/".$nomePrefixo.".shx"); + if($status != 1) + {echo "

Ocorreu um erro no envio do arquivo SHX";paraAguarde();exit;} - $Arquivo = $_FILES['i3GEOuploaddbf']['tmp_name']; - $status = move_uploaded_file($Arquivo,$dirmap."/".$nomePrefixo.".dbf"); - if($status != 1) - {echo "

Ocorreu um erro no envio do arquivo DBF";paraAguarde();exit;} + $Arquivo = $_FILES['i3GEOuploaddbf']['tmp_name']; + $status = move_uploaded_file($Arquivo,$dirmap."/".$nomePrefixo.".dbf"); + if($status != 1) + {echo "

Ocorreu um erro no envio do arquivo DBF";paraAguarde();exit;} - if($_FILES['i3GEOuploadprj']['name'] != ""){ - $Arquivo = $_FILES['i3GEOuploadprj']['tmp_name']; - $status = move_uploaded_file($Arquivo,$dirmap."/".$nomePrefixo.".prj"); - if($status != 1){ - echo "

Ocorreu um erro no envio do arquivo PRJ";paraAguarde();exit; - } - } + if($_FILES['i3GEOuploadprj']['name'] != ""){ + $Arquivo = $_FILES['i3GEOuploadprj']['tmp_name']; + $status = move_uploaded_file($Arquivo,$dirmap."/".$nomePrefixo.".prj"); + if($status != 1){ + echo "

Ocorreu um erro no envio do arquivo PRJ";paraAguarde();exit; + } + } - if(!file_exists($dirmap."/".$nomePrefixo.".shp")) - {echo "

Ocorreu algum problema no envio do arquivo ";paraAguarde();exit;} + if(!file_exists($dirmap."/".$nomePrefixo.".shp")) + {echo "

Ocorreu algum problema no envio do arquivo ";paraAguarde();exit;} - $checkphp = fileContemString($dirmap."/".$nomePrefixo.".prj","Arquivo enviado.

"; - echo "

"; - //nesse caso o formulario de upload esta sendo executado de dentro de um mapa interativo, por isso o mapfile ja existe - if(isset($map_file)){ - echo "

Adicionando tema...

"; - ob_flush(); - flush(); - sleep(1); - $novolayer = ms_newLayerObj($mapa); - $novolayer->set("data",$dirmap."/".$nomePrefixo.".shp"); - $novolayer->set("name",$_FILES['i3GEOuploadshp']['name']); - $novolayer->setmetadata("TEMA",$_FILES['i3GEOuploadshp']['name']); - $novolayer->setmetadata("DOWNLOAD","SIM"); - $sfileObj = ms_newShapefileObj($dirmap."/".$nomePrefixo.".shp", -1); - if(!isset($tipo) || $tipo == "") - {$tipo = $sfileObj->type;} - if ($tipo == 1){$novolayer->set("type",MS_LAYER_POINT);} // ponto - if ($tipo == 3){$novolayer->set("type",MS_LAYER_LINE);} - if ($tipo == 5){$novolayer->set("type",MS_LAYER_POLYGON);} - $novolayer->setmetadata("TEMALOCAL","SIM"); - $novolayer->setmetadata("CLASSE","SIM"); - $novolayer->setmetadata("TEXTO","NAO"); - //if (($tipo != 3) and ($tipo != 8 )){$novolayer->set("type",0);} - $novolayer->setfilter(""); - $classe = ms_newClassObj($novolayer); - $classe->set("name",""); - $estilo = ms_newStyleObj($classe); - if ($tipo == 1) - { - $estilo->set("symbolname","ponto"); - $estilo->set("size",6); - } - $estilo->color->setrgb(200,50,0); - $estilo->outlinecolor->setrgb(0,0,0); - // le os itens - $novolayer->set("status",MS_DEFAULT); - $abriu = $novolayer->open(); - $items = $novolayer->getItems(); - $fechou = $novolayer->close(); - if ($items != "") - { - $its = implode(",",$items); - $novolayer->setmetadata("ITENS",$its); - $novolayer->setmetadata("ITENSDESC",$its); - $novolayer->set("template","none.htm"); - } - if(isset($_GET["uploadEPSG"]) && $_GET["uploadEPSG"] != ""){ - $novolayer->setProjection("init=epsg:".$_GET["uploadEPSG"]); - } - if(file_exists($dirmap."/".$nomePrefixo.".prj")){ - $novolayer->setProjection("AUTO"); - } - //$adiciona = ms_newLayerObj($mapa, $novolayer); - $salvo = $mapa->save($map_file); - //grava os templates de cada tema - echo "

Tema criado!!! Redesenhando o mapa."; - echo ""; - } - elseif($i3GEOuploadCriaMapfile == "on"){ - //verifica se o usuario marcou a opcao de cria mapfile - //nesse caso o aplicativo de upload esta sendo executado de dentro do sistema de administracao, e o mapfile devera - //ser criado e registrado no sistema - $nome = $nomePrefixo; - $codigo = $nomePrefixo; - $it = $nomePrefixo; - $en = $nomePrefixo; - $es = $nomePrefixo; - $sfileObj = ms_newShapefileObj($dirmap."/".$nomePrefixo.".shp", -1); - if(!isset($tipo) || $tipo == ""){ - $tipo = $sfileObj->type; - } - if ($tipo == 1){ - $tipoLayer = "point"; - } - if ($tipo == 3){ - $tipoLayer = "line"; - } - if ($tipo == 5){ - $tipoLayer = "polygon"; - } - $funcao = "CRIARNOVOMAP"; - $output = "retorno"; - $data = $dirmap."/".$nomePrefixo.".shp"; - include_once($locaplic."/admin/php/editormapfile.php"); - echo "

Criado!!!
"; - echo "Para editar clique: editar"; - echo ""; - } + $checkphp = fileContemString($dirmap."/".$nomePrefixo.".prj","Arquivo enviado.

"; + echo "

"; + if($i3GEOuploadCriaMapfile == "on"){ + //verifica se o usuario marcou a opcao de cria mapfile + //nesse caso o aplicativo de upload esta sendo executado de dentro do sistema de administracao, e o mapfile devera + //ser criado e registrado no sistema + $nome = $nomePrefixo; + $codigo = $nomePrefixo; + $it = $nomePrefixo; + $en = $nomePrefixo; + $es = $nomePrefixo; + $sfileObj = ms_newShapefileObj($dirmap."/".$nomePrefixo.".shp", -1); + if(!isset($tipo) || $tipo == ""){ + $tipo = $sfileObj->type; + } + if ($tipo == 1){ + $tipoLayer = "point"; + } + if ($tipo == 3){ + $tipoLayer = "line"; + } + if ($tipo == 5){ + $tipoLayer = "polygon"; + } + $funcao = "CRIARNOVOMAP"; + $output = "retorno"; + $data = $dirmap."/".$nomePrefixo.".shp"; + include_once($locaplic."/admin/php/editormapfile.php"); + echo "

Criado!!!
"; + echo "Para editar clique: editar"; + echo ""; + } } else { - echo "

Erro ao enviar o arquivo. Talvez o tamanho do arquivo seja maior do que o permitido.

"; + echo "

Erro ao enviar o arquivo. Talvez o tamanho do arquivo seja maior do que o permitido.

"; } -restauraCon($map_file,$postgis_mapa); paraAguarde(); function paraAguarde(){ - echo ""; + echo ""; } function verificaNome($nome){ - if(strlen(basename($nome)) > 200){ - exit; - } - $nome = strtolower($nome); - $lista = explode(".",$nome); - $extensao = $lista[count($lista) - 1]; - if(($extensao != "dbf") && ($extensao != "shx") && ($extensao != "shp") && ($extensao != "prj")) - { - echo "Nome de arquivo inválido. $nome"; - paraAguarde(); - exit; - } + if(strlen(basename($nome)) > 200){ + exit; + } + $nome = strtolower($nome); + $lista = explode(".",$nome); + $extensao = $lista[count($lista) - 1]; + if(($extensao != "dbf") && ($extensao != "shx") && ($extensao != "shp") && ($extensao != "prj")) + { + echo "Nome de arquivo inválido. $nome"; + paraAguarde(); + exit; + } } ?> diff --git a/classesjs/dicionario.js b/classesjs/dicionario.js index d741138..a8f3c00 100755 --- a/classesjs/dicionario.js +++ b/classesjs/dicionario.js @@ -879,9 +879,9 @@ var g_traducao = ], "a3a" : [ { - pt : "Importar Web Map Context (WMC)", - en : "Import Web Map Context (WMC)", - es : "Importar Web Map Context (WMC)" + pt : "Importar Web Map Context", + en : "Import Web Map Context", + es : "Importar Web Map Context" } ], "a4" : [ @@ -970,9 +970,9 @@ var g_traducao = ], "a14" : [ { - pt : "Upload SHP, CSV, DBF, GPX, KML", - en : "Upload SHP, CSV, DBF, GPX, KML", - es : "Subir SHP, CSV, DBF, GPX, KML" + pt : "Upload SHP, CSV...", + en : "Upload SHP, CSV...", + es : "Subir SHP, CSV..." } ], "a15" : [ diff --git a/ferramentas/upload/dicionario.js b/ferramentas/upload/dicionario.js index 0d13d18..9906664 100755 --- a/ferramentas/upload/dicionario.js +++ b/ferramentas/upload/dicionario.js @@ -1,7 +1,7 @@ //+$trad(1,i3GEOF.upload.dicionario)+ i3GEOF.upload.dicionario = { 'pastaArmazenamento' : [ { - pt : "Pasta no servidor onde os dados serão armazenados (obrigatório se você estiver utilizando o formulário dentro do sistema de administração)", + pt : "Pasta no servidor onde os dados serão armazenados", en : "", es : "" } ], diff --git a/js/dicionario.js b/js/dicionario.js index 8cf5442..bec88fc 100755 --- a/js/dicionario.js +++ b/js/dicionario.js @@ -879,9 +879,9 @@ var g_traducao = ], "a3a" : [ { - pt : "Importar Web Map Context (WMC)", - en : "Import Web Map Context (WMC)", - es : "Importar Web Map Context (WMC)" + pt : "Importar Web Map Context", + en : "Import Web Map Context", + es : "Importar Web Map Context" } ], "a4" : [ @@ -970,9 +970,9 @@ var g_traducao = ], "a14" : [ { - pt : "Upload SHP, CSV, DBF, GPX, KML", - en : "Upload SHP, CSV, DBF, GPX, KML", - es : "Subir SHP, CSV, DBF, GPX, KML" + pt : "Upload SHP, CSV...", + en : "Upload SHP, CSV...", + es : "Subir SHP, CSV..." } ], "a15" : [ -- libgit2 0.21.2