Commit eefe686ae48701ccbee718329fb4493c2a5af26a
1 parent
13b434cf
Exists in
master
and in
7 other branches
Opção de upload de sahpefile no novo sistema de administração
Showing
6 changed files
with
202 additions
and
242 deletions
Show diff stats
admin/php/subirshapefile.php
@@ -29,6 +29,8 @@ error_reporting(0); | @@ -29,6 +29,8 @@ error_reporting(0); | ||
29 | if (isset($_FILES['i3GEOuploadshp']['name'])) | 29 | if (isset($_FILES['i3GEOuploadshp']['name'])) |
30 | { | 30 | { |
31 | $dirDestino = $_POST["dirDestino"]; | 31 | $dirDestino = $_POST["dirDestino"]; |
32 | + $dirDestino = str_replace(".","",$dirDestino); | ||
33 | + | ||
32 | if(empty($dirDestino)){ | 34 | if(empty($dirDestino)){ |
33 | echo "Pasta nao encontrada"; exit; | 35 | echo "Pasta nao encontrada"; exit; |
34 | } | 36 | } |
@@ -45,8 +47,8 @@ if (isset($_FILES['i3GEOuploadshp']['name'])) | @@ -45,8 +47,8 @@ if (isset($_FILES['i3GEOuploadshp']['name'])) | ||
45 | flush(); | 47 | flush(); |
46 | sleep(1); | 48 | sleep(1); |
47 | $dirmap = $dirDestino; | 49 | $dirmap = $dirDestino; |
48 | - if(!file_exists($dirmap)){ | ||
49 | - echo "<p class='paragrafo' >Pasta não existe no servidor"; | 50 | + if(!file_exists($dirmap) || $dirmap == dirname ( $locaplic ) || $dirmap == dirname ( $locaplic )."/"){ |
51 | + echo "<p class='paragrafo' >Pasta não existe no servidor ou não permitido"; | ||
50 | paraAguarde(); | 52 | paraAguarde(); |
51 | exit; | 53 | exit; |
52 | } | 54 | } |
admin1/dicionario/uploadshp.js
1 | i3GEOadmin.uploadshp.dicionario = { | 1 | i3GEOadmin.uploadshp.dicionario = { |
2 | 'pastaArmazenamento' : [ { | 2 | 'pastaArmazenamento' : [ { |
3 | - pt : "Pasta no servidor onde os dados serão armazenados (caminho físico completo)", | 3 | + pt : "Pasta no servidor onde os dados serão armazenados. Apenas pastas localizadas no mesmo local onde o i3Geo está instalado são permitidas. Exemplo, no caso da instalação ser /var/www e existir a pasta /var/www/data, digite apenas data.", |
4 | en : "", | 4 | en : "", |
5 | es : "" | 5 | es : "" |
6 | } ], | 6 | } ], |
admin1/upload/arquivo/exec.php
1 | <?php | 1 | <?php |
2 | -/* | ||
3 | - * Licenca: | ||
4 | - * | ||
5 | - * GPL2 | ||
6 | - * | ||
7 | - * i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet | ||
8 | - * | ||
9 | - * Direitos Autorais Reservados (c) 2006 Edmar Moretti | ||
10 | - * Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com | ||
11 | - * | ||
12 | - * Este programa é software livre; você pode redistribuí-lo | ||
13 | - * e/ou modificá-lo sob os termos da Licença Pública Geral | ||
14 | - * GNU conforme publicada pela Free Software Foundation; | ||
15 | - * | ||
16 | - * Este programa é distribuído na expectativa de que seja útil, | ||
17 | - * porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita | ||
18 | - * de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. | ||
19 | - * Consulte a Licença Pública Geral do GNU para mais detalhes. | ||
20 | - * Você deve ter recebido uma copia da Licença Pública Geral do | ||
21 | - * GNU junto com este programa; se não, escreva para a | ||
22 | - * Free Software Foundation, Inc., no endereço | ||
23 | - * 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. | ||
24 | - */ | ||
25 | -error_reporting ( 0 ); | ||
26 | -// | ||
27 | -// pega as variaveis passadas com get ou post | ||
28 | -// | ||
29 | - | ||
30 | include_once (dirname ( __FILE__ ) . "/../../../admin/php/login.php"); | 2 | include_once (dirname ( __FILE__ ) . "/../../../admin/php/login.php"); |
31 | -$funcoesEdicao = array ( | ||
32 | - "ADICIONAR", | ||
33 | - "ALTERAR", | ||
34 | - "EXCLUIR" | ||
35 | -); | 3 | + |
36 | if (in_array ( strtoupper ( $funcao ), $funcoesEdicao )) { | 4 | if (in_array ( strtoupper ( $funcao ), $funcoesEdicao )) { |
37 | - if (verificaOperacaoSessao ( "admin/html/usuarios" ) === false) { | ||
38 | - header ( "HTTP/1.1 403 Vc nao pode realizar essa operacao" ); | 5 | + if (verificaOperacaoSessao ( "admin/html/subirshapefile" ) == false) { |
6 | + retornaJSON ( "Vc nao pode realizar essa operacao." ); | ||
39 | exit (); | 7 | exit (); |
40 | } | 8 | } |
41 | } | 9 | } |
42 | -include (dirname ( __FILE__ ) . "/../../../admin/php/conexao.php"); | ||
43 | -$funcao = strtoupper ( $funcao ); | ||
44 | -// converte os parametros de definicao dos papeis em um array | ||
45 | -if ($funcao == "ADICIONAR" || $funcao == "ALTERAR") { | ||
46 | - $papeis = array (); | ||
47 | - foreach ( array_keys ( $_POST ) as $k ) { | ||
48 | - $teste = explode ( "-", $k ); | ||
49 | - if ($teste[0] == "id_papel") { | ||
50 | - $papeis[] = $teste[1] * 1; | ||
51 | - } | ||
52 | - } | ||
53 | - array_unique ( $papeis ); | 10 | +if (isset ( $_GET ["tipo"] )) { |
11 | + $tipo = $_GET ["tipo"]; | ||
54 | } | 12 | } |
55 | -switch ($funcao) { | ||
56 | - case "ADICIONAR" : | ||
57 | - $novo = adicionar( $ativo, $data_cadastro, $email, $login, $nome_usuario, $senha, $papeis, $dbhw ); | ||
58 | - if ($novo != false) { | ||
59 | - $sql = "SELECT id_usuario, ativo, data_cadastro, email, login, nome_usuario from " . $esquemaadmin . "i3geousr_usuarios WHERE id_usuario = " . $novo; | ||
60 | - $dados = pegaDados ( $sql, $dbh ); | ||
61 | - if ($dados === false) { | ||
62 | - header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
63 | - exit (); | ||
64 | - } | ||
65 | - if(strtolower($enviaSenha) == "on"){ | ||
66 | - if($senha == "" || $email == ""){ | ||
67 | - $dados = header ( "HTTP/1.1 500 para enviar a senha é necessário preencher o valor de senha e e-mail" ); | ||
68 | - } else { | ||
69 | - $dados = enviarSenha( $senha, $email ); | ||
70 | - } | ||
71 | - } | ||
72 | - retornaJSON ( $dados ); | ||
73 | - } else { | ||
74 | - header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
75 | - exit (); | ||
76 | - } | 13 | +// locaplic e usado para definir a pasta de destino |
14 | +if (empty ( $locaplic )) { | ||
15 | + exit (); | ||
16 | +} | ||
17 | +error_reporting ( 0 ); | ||
18 | +?> | ||
19 | +<html> | ||
20 | +<head> | ||
21 | +<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1"> | ||
22 | +<link rel="stylesheet" type="text/css" href="../../../css/input.css" /> | ||
23 | +<link rel="stylesheet" type="text/css" href="../../../css/geral.css" /> | ||
24 | +<script src="../../../classesjs/classe_util.js"></script> | ||
25 | +<title></title> | ||
26 | +</head> | ||
27 | +<body bgcolor="white" style="background-color: white; text-align: left;"> | ||
28 | + <p> | ||
29 | +<?php | ||
30 | +if (isset ( $_FILES ['i3GEOuploadshp'] ['name'] )) { | ||
31 | + $dirDestino = $_POST ["dirDestino"]; | ||
32 | + $dirDestino = str_replace(".","",$dirDestino); | ||
33 | + if (empty ( $dirDestino )) { | ||
34 | + echo "Pasta não encontrada"; | ||
77 | exit (); | 35 | exit (); |
78 | - break; | ||
79 | - case "ALTERAR" : | ||
80 | - $novo = alterar ( $id_usuario, $ativo, $data_cadastro, $email, $login, $nome_usuario, $senha, $papeis, $dbhw ); | ||
81 | - if ($novo === false) { | ||
82 | - header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
83 | - exit (); | ||
84 | - } | ||
85 | - $sql = "SELECT * from " . $esquemaadmin . "i3geousr_usuarios WHERE id_usuario = " . $novo; | ||
86 | - $dados = pegaDados ( $sql, $dbh ); | ||
87 | - if ($dados === false) { | ||
88 | - header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
89 | - exit (); | ||
90 | - } | ||
91 | - if(strtolower($enviaSenha) == "on"){ | ||
92 | - if($senha == "" || $email == ""){ | ||
93 | - $dados = header ( "HTTP/1.1 500 para enviar a senha é necessário preencher o valor de senha e e-mail" ); | ||
94 | - } else { | ||
95 | - $dados = enviarSenha( $senha, $email ); | ||
96 | - } | ||
97 | - } | ||
98 | - retornaJSON ( $dados ); | 36 | + } |
37 | + $checaDestino = dirname ( $locaplic ); | ||
38 | + $dirDestino = str_replace ( $checaDestino, "", $dirDestino ); | ||
39 | + $dirDestino = $checaDestino . "/" . $dirDestino; | ||
40 | + | ||
41 | + if (isset ( $logExec ) && $logExec ["upload"] == true) { | ||
42 | + i3GeoLog ( "prog: upload filename:" . $_FILES ['i3GEOuploadshp'] ['name'], $dir_tmp ); | ||
43 | + } | ||
44 | + | ||
45 | + echo "<p class='paragrafo' >Carregando o arquivo...</p>"; | ||
46 | + ob_flush (); | ||
47 | + flush (); | ||
48 | + sleep ( 1 ); | ||
49 | + $dirmap = $dirDestino; | ||
50 | + if (! file_exists ( $dirmap ) || $dirmap == dirname ( $locaplic ) || $dirmap == dirname ( $locaplic )."/") { | ||
51 | + echo "<p class='paragrafo' >Pasta não existe no servidor ou o local não é permitido"; | ||
99 | exit (); | 52 | exit (); |
100 | - break; | ||
101 | - case "LISTA" : | ||
102 | - $usuarios = pegaDados ( "SELECT id_usuario,ativo,data_cadastro,email,login,nome_usuario from " . $esquemaadmin . "i3geousr_usuarios order by nome_usuario", $dbh, false ); | ||
103 | - $papeis = pegaDados ( "SELECT P.id_papel, P.nome, P.descricao, UP.id_usuario FROM " . $esquemaadmin . "i3geousr_usuarios AS U JOIN " . $esquemaadmin . "i3geousr_papelusuario AS UP ON U.id_usuario = UP.id_usuario JOIN " . $esquemaadmin . "i3geousr_papeis AS P ON UP.id_papel = P.id_papel ", dbh, false ); | ||
104 | - if ($usuarios === false || $papeis === false) { | ||
105 | - $dbhw = null; | ||
106 | - $dbh = null; | ||
107 | - header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
108 | - exit (); | ||
109 | - } | ||
110 | - $o = array (); | ||
111 | - foreach ( $usuarios as $usuario ) { | ||
112 | - // pega os papeis registrados para cada operacao | ||
113 | - $p = array (); | ||
114 | - foreach ( $papeis as $papel ) { | ||
115 | - if ($papel["id_usuario"] == $usuario["id_usuario"]) { | ||
116 | - $p[$papel["id_papel"]] = $papel; | ||
117 | - } | ||
118 | - } | ||
119 | - $usuario["papeis"] = $p; | ||
120 | - $o[] = $usuario; | ||
121 | - } | ||
122 | - $papeis = pegaDados ( "SELECT * from " . $esquemaadmin . "i3geousr_papeis order by nome", $dbh ); | ||
123 | - $dbhw = null; | ||
124 | - $dbh = null; | ||
125 | - if ($papeis === false) { | ||
126 | - header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
127 | - exit(); | ||
128 | - } | ||
129 | - retornaJSON ( array ( | ||
130 | - "usuarios" => $o, | ||
131 | - "papeis" => $papeis | ||
132 | - ) ); | ||
133 | - break; | ||
134 | - case "EXCLUIR" : | ||
135 | - $retorna = excluir ( $id_usuario, $dbhw ); | ||
136 | - $dbhw = null; | ||
137 | - $dbh = null; | ||
138 | - if ($retorna === false) { | ||
139 | - header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
140 | - exit (); | ||
141 | - } | ||
142 | - retornaJSON ( $id_usuario ); | 53 | + } |
54 | + // verifica nomes | ||
55 | + verificaNome ( $_FILES ['i3GEOuploadshp'] ['name'] ); | ||
56 | + verificaNome ( $_FILES ['i3GEOuploadshx'] ['name'] ); | ||
57 | + verificaNome ( $_FILES ['i3GEOuploaddbf'] ['name'] ); | ||
58 | + | ||
59 | + if ($_FILES ['i3GEOuploadprj'] ['name'] != "") { | ||
60 | + verificaNome ( $_FILES ['i3GEOuploadprj'] ['name'] ); | ||
61 | + } | ||
62 | + | ||
63 | + // remove acentos | ||
64 | + $nomePrefixo = str_replace ( " ", "_", removeAcentos ( str_replace ( ".shp", "", $_FILES ['i3GEOuploadshp'] ['name'] ) ) ); | ||
65 | + | ||
66 | + $nomePrefixo = str_replace ( ".", "", $nomePrefixo ); | ||
67 | + $nomePrefixo = strip_tags ( $nomePrefixo ); | ||
68 | + $nomePrefixo = htmlspecialchars ( $nomePrefixo, ENT_QUOTES ); | ||
69 | + | ||
70 | + // sobe arquivo | ||
71 | + $Arquivo = $_FILES ['i3GEOuploadshp'] ['tmp_name']; | ||
72 | + if (file_exists ( $dirmap . "/" . $nomePrefixo . ".shp" )) { | ||
73 | + echo "<p class='paragrafo' >Já existe um SHP com o nome "; | ||
74 | + paraAguarde (); | ||
143 | exit (); | 75 | exit (); |
144 | - break; | ||
145 | - case "ENVIARSENHA" : | ||
146 | - if($senha == "" || $email == ""){ | ||
147 | - header ( "HTTP/1.1 500 erro ao enviar e-mail. Prrencha o valor de e-mail e senha" ); | ||
148 | - exit (); | ||
149 | - } | ||
150 | - $retorna = enviarSenha ( $senha, $email ); | ||
151 | - if ($retorna === false) { | ||
152 | - header ( "HTTP/1.1 500 erro ao enviar e-mail $email" ); | 76 | + } |
77 | + $status = move_uploaded_file ( $Arquivo, $dirmap . "/" . $nomePrefixo . ".shp" ); | ||
78 | + if ($status != 1) { | ||
79 | + echo "<p class='paragrafo' >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."; | ||
80 | + paraAguarde (); | ||
81 | + exit (); | ||
82 | + } | ||
83 | + | ||
84 | + $Arquivo = $_FILES ['i3GEOuploadshx'] ['tmp_name']; | ||
85 | + $status = move_uploaded_file ( $Arquivo, $dirmap . "/" . $nomePrefixo . ".shx" ); | ||
86 | + if ($status != 1) { | ||
87 | + echo "<p class='paragrafo' >Ocorreu um erro no envio do arquivo SHX"; | ||
88 | + paraAguarde (); | ||
89 | + exit (); | ||
90 | + } | ||
91 | + | ||
92 | + $Arquivo = $_FILES ['i3GEOuploaddbf'] ['tmp_name']; | ||
93 | + $status = move_uploaded_file ( $Arquivo, $dirmap . "/" . $nomePrefixo . ".dbf" ); | ||
94 | + if ($status != 1) { | ||
95 | + echo "<p class='paragrafo' >Ocorreu um erro no envio do arquivo DBF"; | ||
96 | + paraAguarde (); | ||
97 | + exit (); | ||
98 | + } | ||
99 | + | ||
100 | + if ($_FILES ['i3GEOuploadprj'] ['name'] != "") { | ||
101 | + $Arquivo = $_FILES ['i3GEOuploadprj'] ['tmp_name']; | ||
102 | + $status = move_uploaded_file ( $Arquivo, $dirmap . "/" . $nomePrefixo . ".prj" ); | ||
103 | + if ($status != 1) { | ||
104 | + echo "<p class='paragrafo' >Ocorreu um erro no envio do arquivo PRJ"; | ||
105 | + paraAguarde (); | ||
153 | exit (); | 106 | exit (); |
154 | } | 107 | } |
155 | - retornaJSON ( true ); | 108 | + } |
109 | + | ||
110 | + if (! file_exists ( $dirmap . "/" . $nomePrefixo . ".shp" )) { | ||
111 | + echo "<p class='paragrafo' >Ocorreu algum problema no envio do arquivo "; | ||
112 | + paraAguarde (); | ||
156 | exit (); | 113 | exit (); |
157 | - break; | ||
158 | -} | ||
159 | -cpjson ( $retorno ); | 114 | + } |
160 | 115 | ||
161 | -function enviarSenha( $senha, $email ){ | ||
162 | - $to = $email; | ||
163 | - $subject = 'senha i3geo criada em '. date('l jS \of F Y h:i:s A'); | ||
164 | - $message = $senha; | ||
165 | - return mail($to, $subject, $message); | ||
166 | -} | ||
167 | -// $papeis deve ser um array | ||
168 | -function adicionar($ativo, $data_cadastro, $email, $login, $nome_usuario, $senha, $papeis, $dbhw) { | ||
169 | - global $esquemaadmin; | ||
170 | - try { | ||
171 | - $dataCol = array( | ||
172 | - "nome_usuario" => '', | ||
173 | - "login" => '', | ||
174 | - "email" => '', | ||
175 | - "ativo" => 0, | ||
176 | - "data_cadastro" => '', | ||
177 | - "senha" => '' | ||
178 | - ); | ||
179 | - $id_usuario = i3GeoAdminInsertUnico ( $dbhw, "i3geousr_usuarios", $dataCol, "nome_usuario", "id_usuario" ); | ||
180 | - $data_cadastro = date('l jS \of F Y h:i:s A'); | ||
181 | - $retorna = alterar ( $id_usuario, $ativo, $data_cadastro, $email, $login, $nome_usuario, $senha, $papeis, $dbhw ); | ||
182 | - return $retorna; | ||
183 | - } catch ( PDOException $e ) { | ||
184 | - return false; | 116 | + $checkphp = fileContemString ( $dirmap . "/" . $nomePrefixo . ".prj", "<?" ); |
117 | + if ($checkphp == true) { | ||
118 | + echo "Arquivo prj invalido"; | ||
119 | + unlink ( $dirmap . "/" . $nomePrefixo . ".shp" ); | ||
120 | + unlink ( $dirmap . "/" . $nomePrefixo . ".dbf" ); | ||
121 | + unlink ( $dirmap . "/" . $nomePrefixo . ".shx" ); | ||
122 | + unlink ( $dirmap . "/" . $nomePrefixo . ".prj" ); | ||
123 | + exit (); | ||
185 | } | 124 | } |
186 | -} | ||
187 | -// $papeis deve ser um array | ||
188 | -function alterar($id_usuario, $ativo, $data_cadastro, $email, $login, $nome_usuario, $senha, $papeis, $dbhw) { | ||
189 | - global $esquemaadmin; | ||
190 | - if ($convUTF) { | ||
191 | - $nome_usuario = utf8_encode ( $nome_usuario ); | ||
192 | - } | ||
193 | - $dataCol = array ( | ||
194 | - "nome_usuario" => $nome_usuario, | ||
195 | - "login" => $login, | ||
196 | - "email" => $email, | ||
197 | - "ativo" => $ativo | ||
198 | - ); | ||
199 | - // se a senha foi enviada, ela sera trocada | ||
200 | - if ($senha != "") { | ||
201 | - $dataCol ["senha"] = md5 ( $senha ); | ||
202 | - } | ||
203 | - $resultado = i3GeoAdminUpdate ( $dbhw, "i3geousr_usuarios", $dataCol, "WHERE id_usuario = $id_usuario" ); | ||
204 | - if ($resultado === false) { | ||
205 | - return false; | ||
206 | - } | ||
207 | - // apaga todos os papeis | ||
208 | - $resultado = excluirPapeis ( $id_usuario, $dbhw ); | ||
209 | - if ($resultado === false) { | ||
210 | - return false; | ||
211 | - } | ||
212 | - if (! empty ( $papeis )) { | ||
213 | - // atualiza papeis vinculados | ||
214 | - foreach ( $papeis as $p ) { | ||
215 | - $resultado = adicionaPapel ( $id_usuario, $p, $dbhw ); | ||
216 | - if ($resultado === false) { | ||
217 | - return false; | ||
218 | - } | 125 | + $checkphp = fileContemString ( $dirmap . "/" . $nomePrefixo . ".shx", "<?" ); |
126 | + if ($checkphp == true) { | ||
127 | + echo "Arquivo shx invalido"; | ||
128 | + unlink ( $dirmap . "/" . $nomePrefixo . ".shp" ); | ||
129 | + unlink ( $dirmap . "/" . $nomePrefixo . ".dbf" ); | ||
130 | + unlink ( $dirmap . "/" . $nomePrefixo . ".shx" ); | ||
131 | + unlink ( $dirmap . "/" . $nomePrefixo . ".prj" ); | ||
132 | + exit (); | ||
133 | + } | ||
134 | + $checkphp = fileContemString ( $dirmap . "/" . $nomePrefixo . ".dbf", "<?" ); | ||
135 | + if ($checkphp == true) { | ||
136 | + echo "Arquivo dbf invalido"; | ||
137 | + unlink ( $dirmap . "/" . $nomePrefixo . ".shp" ); | ||
138 | + unlink ( $dirmap . "/" . $nomePrefixo . ".dbf" ); | ||
139 | + unlink ( $dirmap . "/" . $nomePrefixo . ".shx" ); | ||
140 | + unlink ( $dirmap . "/" . $nomePrefixo . ".prj" ); | ||
141 | + exit (); | ||
142 | + } | ||
143 | + echo "<p class='paragrafo' >Arquivo enviado.</p>"; | ||
144 | + echo "<p class='paragrafo'></p>"; | ||
145 | + if ($i3GEOuploadCriaMapfile == "on") { | ||
146 | + // verifica se o usuario marcou a opcao de cria mapfile | ||
147 | + // nesse caso o aplicativo de upload esta sendo executado de dentro do sistema de administracao, e o mapfile devera | ||
148 | + // ser criado e registrado no sistema | ||
149 | + $nome = $nomePrefixo; | ||
150 | + $codigo = $nomePrefixo; | ||
151 | + $it = $nomePrefixo; | ||
152 | + $en = $nomePrefixo; | ||
153 | + $es = $nomePrefixo; | ||
154 | + $sfileObj = ms_newShapefileObj ( $dirmap . "/" . $nomePrefixo . ".shp", - 1 ); | ||
155 | + if (! isset ( $tipo ) || $tipo == "") { | ||
156 | + $tipo = $sfileObj->type; | ||
157 | + } | ||
158 | + if ($tipo == 1) { | ||
159 | + $tipoLayer = "point"; | ||
160 | + } | ||
161 | + if ($tipo == 3) { | ||
162 | + $tipoLayer = "line"; | ||
219 | } | 163 | } |
164 | + if ($tipo == 5) { | ||
165 | + $tipoLayer = "polygon"; | ||
166 | + } | ||
167 | + $funcao = "CRIARNOVOMAP"; | ||
168 | + $output = "retorno"; | ||
169 | + $data = $dirmap . "/" . $nomePrefixo . ".shp"; | ||
170 | + include_once ($locaplic . "/admin/php/editormapfile.php"); | ||
171 | + echo "<b><p class='paragrafo' >Criado!!!<br>"; | ||
172 | + echo "Para editar clique: <a href='../../admin/html/editormapfile.html' target=_blank >editar</a>"; | ||
173 | + echo "<script>window.scrollTo(0,10000);i3GEO.util.insereCookie('I3GEOletraAdmin','" . $nomePrefixo . "');</script>"; | ||
220 | } | 174 | } |
221 | - return $id_usuario; | ||
222 | -} | ||
223 | -function adicionaPapel($id_usuario, $id_papel, $dbhw) { | ||
224 | - global $esquemaadmin; | ||
225 | - $dataCol = array ( | ||
226 | - "id_usuario" => $id_usuario, | ||
227 | - "id_papel" => $id_papel | ||
228 | - ); | ||
229 | - $resultado = i3GeoAdminInsert ( $dbhw, "i3geousr_papelusuario", $dataCol ); | ||
230 | - return $resultado; | 175 | + echo "<p class='paragrafo'>Pode fechar essa janela.</p>"; |
176 | +} else { | ||
177 | + echo "<p class='paragrafo' >Erro ao enviar o arquivo. Talvez o tamanho do arquivo seja maior do que o permitido.</p>"; | ||
231 | } | 178 | } |
232 | -function excluir($id_usuario, $dbhw) { | ||
233 | - global $esquemaadmin; | ||
234 | - $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geousr_usuarios", "id_usuario", $id_usuario, $dbhw, false ); | ||
235 | - if ($resultado === false) { | ||
236 | - return false; | 179 | + |
180 | +function verificaNome($nome) { | ||
181 | + if (strlen ( basename ( $nome ) ) > 200) { | ||
182 | + exit (); | ||
237 | } | 183 | } |
238 | - if ($resultado === true) { | ||
239 | - $resultado = excluirPapeis ( $id_usuario, $dbhw ); | 184 | + $nome = strtolower ( $nome ); |
185 | + $lista = explode ( ".", $nome ); | ||
186 | + $extensao = $lista [count ( $lista ) - 1]; | ||
187 | + if (($extensao != "dbf") && ($extensao != "shx") && ($extensao != "shp") && ($extensao != "prj")) { | ||
188 | + echo "Nome de arquivo inválido. $nome"; | ||
189 | + paraAguarde (); | ||
190 | + exit (); | ||
240 | } | 191 | } |
241 | - return $resultado; | ||
242 | -} | ||
243 | -function excluirPapeis($id_usuario, $dbhw) { | ||
244 | - global $esquemaadmin; | ||
245 | - $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geousr_papelusuario", "id_usuario", $id_usuario, $dbhw, false ); | ||
246 | - return $resultado; | ||
247 | } | 192 | } |
248 | ?> | 193 | ?> |
194 | + | ||
195 | + | ||
196 | +</body> | ||
197 | +</html> |
admin1/upload/arquivo/index.js
@@ -31,7 +31,6 @@ i3GEOadmin.uploadshp = { | @@ -31,7 +31,6 @@ i3GEOadmin.uploadshp = { | ||
31 | .done( | 31 | .done( |
32 | function(data, status){ | 32 | function(data, status){ |
33 | var json = jQuery.parseJSON(data); | 33 | var json = jQuery.parseJSON(data); |
34 | - console.info(json) | ||
35 | var html = Mustache.to_html( | 34 | var html = Mustache.to_html( |
36 | "{{#data}}" + $("#templateProj").html() + "{{/data}}", | 35 | "{{#data}}" + $("#templateProj").html() + "{{/data}}", |
37 | json | 36 | json |
admin1/upload/arquivo/index.php
@@ -42,25 +42,26 @@ include "../../head.php"; | @@ -42,25 +42,26 @@ include "../../head.php"; | ||
42 | </div> | 42 | </div> |
43 | </div> | 43 | </div> |
44 | <div class="container hidden" id="corpo"> | 44 | <div class="container hidden" id="corpo"> |
45 | - <form style="" action="#" onsubmit="return false;" class="form-horizontal" role="form" | ||
46 | - method="post"> | 45 | + <form style="" target="i3GEOuploadiframe" |
46 | + action="exec.php" method="post" | ||
47 | + ENCTYPE="multipart/form-data" onsubmit="javascript:$('#modalUpload').modal('show');" class="form-horizontal" role="form" method="post"> | ||
47 | <div class="row center-block well"> | 48 | <div class="row center-block well"> |
48 | <div class="col-md-12"> | 49 | <div class="col-md-12"> |
49 | <h4>{{{txtArquivos}}}</h4> | 50 | <h4>{{{txtArquivos}}}</h4> |
50 | <div class="form-group form-group-lg col-md-6"> | 51 | <div class="form-group form-group-lg col-md-6"> |
51 | - <input id="i3GEOuploadshp" multiple="" type="file"> <input readonly="" class="form-control" | 52 | + <input name="i3GEOuploadshp" multiple="" type="file"> <input readonly="" class="form-control" |
52 | placeholder="SHP" type="text"> | 53 | placeholder="SHP" type="text"> |
53 | </div> | 54 | </div> |
54 | <div class="form-group form-group-lg col-md-6"> | 55 | <div class="form-group form-group-lg col-md-6"> |
55 | - <input id="i3GEOuploadshx" multiple="" type="file"> <input readonly="" class="form-control" | 56 | + <input name="i3GEOuploadshx" multiple="" type="file"> <input readonly="" class="form-control" |
56 | placeholder="SHX" type="text"> | 57 | placeholder="SHX" type="text"> |
57 | </div> | 58 | </div> |
58 | <div class="form-group form-group-lg col-md-6"> | 59 | <div class="form-group form-group-lg col-md-6"> |
59 | - <input id="i3GEOuploaddbf" multiple="" type="file"> <input readonly="" class="form-control" | 60 | + <input name="i3GEOuploaddbf" multiple="" type="file"> <input readonly="" class="form-control" |
60 | placeholder="DBF" type="text"> | 61 | placeholder="DBF" type="text"> |
61 | </div> | 62 | </div> |
62 | <div class="form-group form-group-lg col-md-6"> | 63 | <div class="form-group form-group-lg col-md-6"> |
63 | - <input id="i3GEOuploadprj" multiple="" type="file"> <input readonly="" class="form-control" | 64 | + <input name="i3GEOuploadprj" multiple="" type="file"> <input readonly="" class="form-control" |
64 | placeholder="PRJ (opcional)" type="text"> | 65 | placeholder="PRJ (opcional)" type="text"> |
65 | </div> | 66 | </div> |
66 | </div> | 67 | </div> |
@@ -94,12 +95,11 @@ include "../../head.php"; | @@ -94,12 +95,11 @@ include "../../head.php"; | ||
94 | </div> | 95 | </div> |
95 | </div> | 96 | </div> |
96 | <div class="form-group form-group-lg"> | 97 | <div class="form-group form-group-lg"> |
97 | - <label class="col-md-5 control-label" style="margin-top:0px;" for="i3GEOuploadCriaMapfile">{{{criaMapfile}}}</label> | 98 | + <label class="col-md-5 control-label" style="margin-top: 0px;" for="i3GEOuploadCriaMapfile">{{{criaMapfile}}}</label> |
98 | <div class="col-md-7"> | 99 | <div class="col-md-7"> |
99 | - <div class=" checkbox"> | ||
100 | - <label> | ||
101 | - <input title="{{{criaMapfile}}}" name="i3GEOuploadCriaMapfile" type="checkbox"> | ||
102 | - </label> | 100 | + <div class=" checkbox"> |
101 | + <label> <input title="{{{criaMapfile}}}" name="i3GEOuploadCriaMapfile" type="checkbox"> | ||
102 | + </label> | ||
103 | </div> | 103 | </div> |
104 | </div> | 104 | </div> |
105 | </div> | 105 | </div> |
@@ -115,6 +115,16 @@ include "../../head.php"; | @@ -115,6 +115,16 @@ include "../../head.php"; | ||
115 | 115 | ||
116 | </form> | 116 | </form> |
117 | </div> | 117 | </div> |
118 | +<div id="modalUpload" class="modal fade" tabindex="-1"> | ||
119 | + <div class="modal-dialog modal-lg"> | ||
120 | + <div class="modal-content"> | ||
121 | + <div class="modal-body modal-lg"> | ||
122 | + <iframe name=i3GEOuploadiframe style="text-align: left; border: 0px solid gray;" width="100%" | ||
123 | + height="100%"></iframe> | ||
124 | + </div> | ||
125 | + </div> | ||
126 | + </div> | ||
127 | +</div> | ||
118 | <script id="templateProj" type="x-tmpl-mustache"> | 128 | <script id="templateProj" type="x-tmpl-mustache"> |
119 | <option value="{{{codigo}}}">{{{nome}}}</option> | 129 | <option value="{{{codigo}}}">{{{nome}}}</option> |
120 | </script> | 130 | </script> |
ferramentas/upload/dicionario.js
1 | //+$trad(1,i3GEOF.upload.dicionario)+ | 1 | //+$trad(1,i3GEOF.upload.dicionario)+ |
2 | i3GEOF.upload.dicionario = { | 2 | i3GEOF.upload.dicionario = { |
3 | 'pastaArmazenamento' : [ { | 3 | 'pastaArmazenamento' : [ { |
4 | - pt : "Pasta no servidor onde os dados serão armazenados", | 4 | + pt : "Pasta no servidor onde os dados serão armazenados. Apenas pastas localizadas no mesmo local onde o i3Geo está instalado são permitidas. Exemplo, no caso da instalação ser /var/www e existir a pasta /var/www/data, digite apenas data", |
5 | en : "", | 5 | en : "", |
6 | es : "" | 6 | es : "" |
7 | } ], | 7 | } ], |