Commit 9e3f0d4c42759f36bbf6989dc448d02f1261b5e2

Authored by Murilo Caixêta
1 parent ab5f4147

Adaptação para dicionário

admin/dicionario/core.js
... ... @@ -196,6 +196,56 @@ i3GEOadmin.core.dicionario = {
196 196 en : "",
197 197 es : ""
198 198 } ],
  199 + 'obtemDados' : [ {
  200 + pt : "Obtendo dados...",
  201 + en : "",
  202 + es : ""
  203 + } ],
  204 + 'editor' : [ {
  205 + pt : "Editor",
  206 + en : "",
  207 + es : ""
  208 + } ],
  209 + 'cancela' : [ {
  210 + pt : "Cancela",
  211 + en : "",
  212 + es : ""
  213 + } ],
  214 + '' : [ {
  215 + pt : "",
  216 + en : "",
  217 + es : ""
  218 + } ],
  219 + '' : [ {
  220 + pt : "",
  221 + en : "",
  222 + es : ""
  223 + } ],
  224 + '' : [ {
  225 + pt : "",
  226 + en : "",
  227 + es : ""
  228 + } ],
  229 + '' : [ {
  230 + pt : "",
  231 + en : "",
  232 + es : ""
  233 + } ],
  234 + '' : [ {
  235 + pt : "",
  236 + en : "",
  237 + es : ""
  238 + } ],
  239 + '' : [ {
  240 + pt : "",
  241 + en : "",
  242 + es : ""
  243 + } ],
  244 + '' : [ {
  245 + pt : "",
  246 + en : "",
  247 + es : ""
  248 + } ],
199 249 '' : [ {
200 250 pt : "",
201 251 en : "",
... ...
admin/dicionario/editormapfile.js
... ... @@ -171,6 +171,111 @@ i3GEOadmin.editormapfile.dicionario = {
171 171 en : "",
172 172 es : ""
173 173 } ],
  174 + 'editaCaractClasses' : [ {
  175 + pt : "edita características da classe",
  176 + en : "",
  177 + es : ""
  178 + } ],
  179 + 'editaIdentTxt' : [ {
  180 + pt : "edita identificadores de texto",
  181 + en : "",
  182 + es : ""
  183 + } ],
  184 + 'editaCaractGerais' : [ {
  185 + pt : " Editar características gerais",
  186 + en : "",
  187 + es : ""
  188 + } ],
  189 + 'editaToponimia' : [ {
  190 + pt : " Editar toponímia",
  191 + en : "",
  192 + es : ""
  193 + } ],
  194 + 'estilos' : [ {
  195 + pt : "Estilos",
  196 + en : "",
  197 + es : ""
  198 + } ],
  199 + 'msgNovaClasse' : [ {
  200 + pt : " adicionando uma nova classe",
  201 + en : "",
  202 + es : ""
  203 + } ],
  204 + 'msgGeraClasse' : [ {
  205 + pt : " gerando as classes",
  206 + en : "",
  207 + es : ""
  208 + } ],
  209 + 'criaClasses' : [ {
  210 + pt : "Criar classes",
  211 + en : "",
  212 + es : ""
  213 + } ],
  214 + 'itemExpressao' : [ {
  215 + pt : "Item da tabela de atributos que será utilizado para compor a expressão de seleção de cada classe",
  216 + en : "",
  217 + es : ""
  218 + } ],
  219 + 'itemNome' : [ {
  220 + pt : "Item da tabela de atributos que será utilizado para compor o nome de cada classe",
  221 + en : "",
  222 + es : ""
  223 + } ],
  224 + 'excluiClasse' : [ {
  225 + pt : "Exclui a classe?",
  226 + en : "",
  227 + es : ""
  228 + } ],
  229 + 'nomeClasse' : [ {
  230 + pt : "Nome da classe para ser mostrada na legenda",
  231 + en : "",
  232 + es : ""
  233 + } ],
  234 + 'descricaoClasse' : [ {
  235 + pt : "Descrição da classe (mostrada na legenda quando o mouse é sobreposto",
  236 + en : "",
  237 + es : ""
  238 + } ],
  239 + 'exibeClasse' : [ {
  240 + pt : "Define o estado atual de exibição da classe. Default ativa a camada permanentemente.",
  241 + en : "",
  242 + es : ""
  243 + } ],
  244 + 'expressaoClasse' : [ {
  245 + pt : "Quatro tipos de expressões são suportadas para definir as classes. Comparação de strings, expressões regulares, expressões lógicas simples e funções de string. Se nenhuma expressão é fornecida, então todas as feições pertencem à classe em questão. Comparação de strings são sensíveis a caracteres e são as mais rápidas e se processar. Não são necessários delimitadores especiais, mas é preciso citar entre aspas strings que contenham caracteres especiais. Como boas práticas, é recomendado citar todas as strings. Expressões regulares são delimitadas utilizando barras (/regex/). Não devem ser usadas aspas. O atributo a ser usado como comparação é definido no parâmetro CLASSITEM do nível do LAYER. Expressões lógicas te permitem construir testes bastante complexos em um ou mais atributos e portanto só são permitas com shapefiles. Expressões lógicas são delimitadas com parênteses “(expressão)”. Nomes de atributos são delimitados por colchetes “[ATRIBUTO]”. Estes nomes são sensíveis a caracteres e devem concordar com os itens no shapefile. Por exemplo: EXPRESSION ([POPULATION] > 50000 AND [LANGUAGE] eq FRENCH ). Os seguintes operadores lógicos são suportados: =, >, <, <=, >=, =, or, and, lt, gt, ge, le, eq, ne, in, ~, ~*. Este nível de complexidade é mais lento a se processar. Existe uma função de string: lenght(). Ela computa o comprimento de uma string. Exemplo: EXPRESSION (length( [NAME_E] ) < 8). Comparação de strings e expressões regulares trabalham a partir do CLASSITEM definido no nível da LAYER. Você pode combinar diferentes tipos de expressões juntamente com diferentes classes de uma camada. ",
  246 + en : "",
  247 + es : ""
  248 + } ],
  249 + 'arquivoLegenda' : [ {
  250 + pt : "Nome completo do arquivo de imagem da legenda para a CLASS. Esta imagem é usada ao construir uma legenda (ou quando requisitando um ícone de legenda via MapScript ou uma aplicação CGI).",
  251 + en : "",
  252 + es : ""
  253 + } ],
  254 + 'escalaMax' : [ {
  255 + pt : "Escala máxima na qual a CLASS é desenhada. A escala é dada como o denominador da fração da escala. Por exemplo, para uma mapa na escala 1:24,000 use 24000.",
  256 + en : "",
  257 + es : ""
  258 + } ],
  259 + 'escalaMin' : [ {
  260 + pt : "Escala mínima na qual a CLASS é desenhada. A escala é dada como o denominador da fração da escala. Por exemplo, para uma mapa na escala 1:24,000 use 24000.",
  261 + en : "",
  262 + es : ""
  263 + } ],
  264 + 'atributos' : [ {
  265 + pt : "O layer possuí as seguintes colunas na tabela de atributos: ",
  266 + en : "",
  267 + es : ""
  268 + } ],
  269 + '' : [ {
  270 + pt : "",
  271 + en : "",
  272 + es : ""
  273 + } ],
  274 + '' : [ {
  275 + pt : "",
  276 + en : "",
  277 + es : ""
  278 + } ],
174 279 '' : [ {
175 280 pt : "",
176 281 en : "",
... ...
admin/js/editormapfile_classes.js
... ... @@ -11,7 +11,7 @@ Abre o editor de dados gerais de uma classe
11 11 function editorClasseGeral(codigoMap,codigoLayer,indiceClasse)
12 12 {
13 13 var sUrl = "../php/editormapfile.php?funcao=pegaClasseGeral&codigoMap="+codigoMap+"&codigoLayer="+codigoLayer+"&indiceClasse="+indiceClasse;
14   - core_pegaDados("Obtendo dados...",sUrl,"montaEditorClasseGeral");
  14 + core_pegaDados($trad("obtemDados",i3GEOadmin.core.dicionario),sUrl,"montaEditorClasseGeral");
15 15 }
16 16 function loadClasseData(node, fnLoadComplete)
17 17 {
... ... @@ -38,9 +38,9 @@ function loadClasseData(node, fnLoadComplete)
38 38 YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
39 39 }
40 40 function conteudoNoClasse(codigoMap,codigoLayer,indice,nome){
41   - var conteudo = "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"sobeDesce('sobe','classe','"+codigoMap+"','"+codigoLayer+"','"+indice+"')\" title=sobe src=\"../imagens/34.png\" />";
42   - conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"sobeDesce('desce','classe','"+codigoMap+"','"+codigoLayer+"','"+indice+"')\" title=desce src=\"../imagens/33.png\" />";
43   - conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"excluirClasse('"+codigoMap+"','"+codigoLayer+"','"+indice+"')\" title=excluir width='10px' heigth='10px' src=\"../imagens/01.png\" />&nbsp;<span>"+indice+" "+i3GEO.util.base64decode(nome)+"</span>";
  41 + var conteudo = "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"sobeDesce('sobe','classe','"+codigoMap+"','"+codigoLayer+"','"+indice+"')\" title="+ $trad("sobe",i3GEOadmin.core.dicionario) +" src=\"../imagens/34.png\" />";
  42 + conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"sobeDesce('desce','classe','"+codigoMap+"','"+codigoLayer+"','"+indice+"')\" title="+ $trad("desce",i3GEOadmin.core.dicionario) +" src=\"../imagens/33.png\" />";
  43 + conteudo += "&nbsp;<img style=\"position:relative;cursor:pointer;top:0px\" onclick=\"excluirClasse('"+codigoMap+"','"+codigoLayer+"','"+indice+"')\" title="+ $trad("excluir",i3GEOadmin.core.dicionario) +" width='10px' heigth='10px' src=\"../imagens/01.png\" />&nbsp;<span>"+indice+" "+i3GEO.util.base64decode(nome)+"</span>";
44 44 var d = {type:'html',classes:codigoMap+"_"+codigoLayer,html:conteudo,id:codigoMap+"_"+codigoLayer+"_"+indice,codigoMap:codigoMap,codigoLayer:codigoLayer,indiceClasse:indice};
45 45 return d;
46 46 }
... ... @@ -54,7 +54,7 @@ function montaParametrosClasses(no,dados,redesenha)
54 54 var tempNodeR = "";
55 55 if(!tree.getNodeByProperty("etiquetaClasseGeral",no.data.id))
56 56 {
57   - conteudo = "<span style=cursor:pointer; onclick=\"editorClasseGeral('"+codigoMap+"','"+codigoLayer+"','"+indiceClasse+"')\" ><img width='10px' heigth='10px' style=\"position:relative;top:0px\" title='edita caracter&iacute;sticas da classe' src=\"../imagens/06.png\" /> Editar caracter&iacute;sticas gerais</span>";
  57 + conteudo = "<span style=cursor:pointer; onclick=\"editorClasseGeral('"+codigoMap+"','"+codigoLayer+"','"+indiceClasse+"')\" ><img width='10px' heigth='10px' style=\"position:relative;top:0px\" title='"+ $trad("editaCaractClasses",i3GEOadmin.editormapfile.dicionario) +"' src=\"../imagens/06.png\" />"+ $trad("editaCaractGerais",i3GEOadmin.editormapfile.dicionario) +"</span>";
58 58 var d = {tipo:"etiquetaClasseGeral",etiquetaClasseGeral:codigoMap+"_"+codigoLayer+"_"+indiceClasse,html:conteudo};
59 59 tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
60 60 tempNode.isLeaf = true;
... ... @@ -62,7 +62,7 @@ function montaParametrosClasses(no,dados,redesenha)
62 62 }
63 63 if(!tree.getNodeByProperty("etiquetaClasseLabel",no.data.id))
64 64 {
65   - conteudo = "<span style=cursor:pointer; onclick=\"editorClasseLabel('"+codigoMap+"','"+codigoLayer+"','"+indiceClasse+"')\" ><img width='10px' heigth='10px' style=\"position:relative;top:0px\" title='edita identificadores de texto' src=\"../imagens/06.png\" /> Editar topon&iacute;mia</span>";
  65 + conteudo = "<span style=cursor:pointer; onclick=\"editorClasseLabel('"+codigoMap+"','"+codigoLayer+"','"+indiceClasse+"')\" ><img width='10px' heigth='10px' style=\"position:relative;top:0px\" title='"+ $trad("editaIdentTxt",i3GEOadmin.editormapfile.dicionario) +"' src=\"../imagens/06.png\" />"+ $trad("editaToponimia",i3GEOadmin.editormapfile.dicionario) +"</span>";
66 66 var d = {tipo:"etiquetaClasseLabel",etiquetaClasseLabel:codigoMap+"_"+codigoLayer+"_"+indiceClasse,html:conteudo};
67 67 tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
68 68 tempNode.isLeaf = true;
... ... @@ -70,12 +70,12 @@ function montaParametrosClasses(no,dados,redesenha)
70 70 }
71 71 if(!tree.getNodeByProperty("etiquetaEstilo",no.data.id))
72 72 {
73   - var d = {tipo:"etiquetaEstilo",etiquetaEstilo:codigoMap+"_"+codigoLayer+"_"+indiceClasse,html:"<i>Estilos</i>"};
  73 + var d = {tipo:"etiquetaEstilo",etiquetaEstilo:codigoMap+"_"+codigoLayer+"_"+indiceClasse,html:"<i>"+ $trad("estilos",i3GEOadmin.editormapfile.dicionario) +"</i>"};
74 74 tempNodeR = new YAHOO.widget.HTMLNode(d, no, false,true);
75 75 tempNodeR.isLeaf = false;
76 76 tempNodeR.enableHighlight = false;
77 77  
78   - conteudo = "<span onclick=\"adicionaNovoEstilo('"+codigoMap+"','"+codigoLayer+"','"+indiceClasse+"')\" style=\"cursor:pointer;\" ><img style=\"position:relative;top:2px\" src=\"../imagens/05.png\" /> Adicionar um novo</span>";
  78 + conteudo = "<span onclick=\"adicionaNovoEstilo('"+codigoMap+"','"+codigoLayer+"','"+indiceClasse+"')\" style=\"cursor:pointer;\" ><img style=\"position:relative;top:2px\" src=\"../imagens/05.png\" />"+ $trad("adicionaNovo",i3GEOadmin.core.dicionario) +"</span>";
79 79 var d = {tipo:"etiquetaEstilo",etiquetaEstilo:codigoMap+"_"+codigoLayer+"_"+indiceClasse,html:conteudo};
80 80 tempNode = new YAHOO.widget.HTMLNode(d, tempNodeR, false,true);
81 81 tempNode.isLeaf = true;
... ... @@ -100,7 +100,7 @@ Adiciona uma nova classe
100 100 function adicionaNovaClasse(codigoMap,codigoLayer,indiceClasse)
101 101 {
102 102 core_carregando("ativa");
103   - core_carregando(" adicionando uma nova classe");
  103 + core_carregando($trad("msgNovaClasse",i3GEOadmin.editormapfile.dicionario));
104 104 sUrl = "../php/editormapfile.php?funcao=criarNovaClasse&codigoMap="+codigoMap+"&codigoLayer="+codigoLayer;
105 105 var callback =
106 106 {
... ... @@ -110,7 +110,7 @@ function adicionaNovaClasse(codigoMap,codigoLayer,indiceClasse)
110 110 {
111 111 if(YAHOO.lang.JSON.parse(o.responseText) == "erro")
112 112 {
113   - core_carregando("<span style=color:red >Erro</span>");
  113 + core_carregando("<span style=color:red >"+ $trad("erro",i3GEOadmin.core.dicionario) +"</span>");
114 114 setTimeout("core_carregando('desativa')",3000);
115 115 }
116 116 else
... ... @@ -151,7 +151,7 @@ function classesAuto(codigoMap,codigoLayer)
151 151 if(p_oEvent.newValue.get("value") == "OK" && itemExpressao != "")
152 152 {
153 153 core_carregando("ativa");
154   - core_carregando(" gerando as classes");
  154 + core_carregando($trad("msgGeraClasse",i3GEOadmin.editormapfile.dicionario));
155 155 var sUrl = "../php/editormapfile.php?funcao=autoClassesLayer&codigoMap="+codigoMap+"&codigoLayer="+codigoLayer+"&itemExpressao="+itemExpressao+"&itemNome="+itemNome;
156 156 var callback2 = {
157 157 success:function(o) {
... ... @@ -200,15 +200,15 @@ function classesAuto(codigoMap,codigoLayer)
200 200 if(!YAHOO.admin.container.panelEditorAutoClasses){
201 201 var novoel = document.createElement("div");
202 202 novoel.id = "janela_editor_auto";
203   - var ins = '<div class="hd">Editor</div>';
  203 + var ins = '<div class="hd">'+ $trad("editor",i3GEOadmin.core.dicionario) +'</div>';
204 204 ins += "<div class='bd' style='height:354px;overflow:auto'>";
205 205 ins += "<div id='okcancel_checkbox'></div><div id='editor_bd'></div>";
206 206 novoel.innerHTML = ins;
207 207 document.body.appendChild(novoel);
208 208 var editorBotoes = new YAHOO.widget.ButtonGroup({id:"okcancel_checkbox_id", name: "okcancel_checkbox_id", container: "okcancel_checkbox" });
209 209 editorBotoes.addButtons([
210   - { label: "Criar classes", value: "OK", checked: false},
211   - { label: "Cancela", value: "CANCEL", checked: false }
  210 + { label: $trad("criaClasses",i3GEOadmin.editormapfile.dicionario), value: "OK", checked: false},
  211 + { label: $trad("cancela",i3GEOadmin.core.dicionario), value: "CANCEL", checked: false }
212 212 ]);
213 213 editorBotoes.on("checkedButtonChange", on_editorCheckBoxChange);
214 214 YAHOO.admin.container.panelEditorAutoClasses = new YAHOO.widget.Panel("janela_editor_auto", { fixedcenter:true,close:true,width:"400px", height:"400px",overflow:"auto", visible:false,constraintoviewport:true } );
... ... @@ -228,11 +228,11 @@ function classesAuto(codigoMap,codigoLayer)
228 228 success:function(o) {
229 229 try {
230 230 var itens = core_comboObjeto(YAHOO.lang.JSON.parse(o.responseText).itens,"","","");
231   - var ins = "<p>Item da tabela de atributos que ser&aacute; utilizado para compor a express&atilde;o de sele&ccedil;&atilde;o de cada classe</p>";
  231 + var ins = "<p>"+ $trad("itemExpressao",i3GEOadmin.editormapfile.dicionario) +"</p>";
232 232 ins += "<select id='itemExpressao' >";
233 233 ins += itens;
234 234 ins += "</select></p>";
235   - ins += "<p>Item da tabela de atributos que ser&aacute; utilizado para compor o nome de cada classe</p>";
  235 + ins += "<p>"+ $trad("itemNome",i3GEOadmin.editormapfile.dicionario) +"</p>";
236 236 ins += "<select id='itemNome' >";
237 237 ins += itens;
238 238 ins += "</select></p>";
... ... @@ -261,7 +261,7 @@ function excluirClasse(codigoMap,codigoLayer,indiceClasse)
261 261 {
262 262 this.hide();
263 263 core_carregando("ativa");
264   - var mensagem = " excluindo "+indiceClasse;
  264 + var mensagem = $trad("msgExcluiMap",i3GEOadmin.core.dicionario)+indiceClasse;
265 265 core_carregando(mensagem);
266 266 var sUrl = "../php/editormapfile.php?funcao=excluirClasse&codigoMap="+codigoMap+"&codigoLayer="+codigoLayer+"&indiceClasse="+indiceClasse;
267 267 var callback =
... ... @@ -284,7 +284,7 @@ function excluirClasse(codigoMap,codigoLayer,indiceClasse)
284 284 };
285 285 var handleNo = function()
286 286 {this.hide();};
287   - var mensagem = "Exclui a classe?";
  287 + var mensagem = $trad("excluiClasse",i3GEOadmin.editormapfile.dicionario);
288 288 var largura = "300";
289 289 core_dialogoContinua(handleYes,handleNo,mensagem,largura);
290 290 }
... ... @@ -301,26 +301,26 @@ function montaEditorClasseGeral(dados)
301 301  
302 302 var param = {
303 303 "linhas":[
304   - {ajuda:"Nome da classe para ser mostrada na legenda",
  304 + {ajuda:$trad("nomeClasse",i3GEOadmin.editormapfile.dicionario),
305 305 titulo:"Name",id:"name",value:dados.name,tipo:"text"},
306   - {ajuda:"Descri&ccedil;&atilde;o da classe (mostrada na legenda quando o mouse &eacute; sobreposto",
  306 + {ajuda:$trad("descricaoClasse",i3GEOadmin.editormapfile.dicionario),
307 307 titulo:"Title",id:"title",value:dados.title,tipo:"text"},
308   - {ajuda:"Define o estado atual de exibi&ccedil;&atilde;o da classe. Default ativa a camada permanentemente.",
  308 + {ajuda:$trad("exibeClasse",i3GEOadmin.editormapfile.dicionario),
309 309 titulo:"Status",id:"",value:dados.status,tipo:"text",div:"<div id=cStatus ></div>"},
310   - {ajuda:"Quatro tipos de express&otilde;es s&atilde;o suportadas para definir as classes. Compara&ccedil;&atilde;o de strings, express&otilde;es regulares, express&otilde;es l&oacute;gicas simples e fun&ccedil;&otilde;es de string. Se nenhuma express&atilde;o &eacute; fornecida, ent&atilde;o todas as fei&ccedil;&otilde;es pertencem &agrave; classe em quest&atilde;o. Compara&ccedil;&atilde;o de strings s&atilde;o sens&iacute;veis a caracteres e s&atilde;o as mais r&aacute;pidas e se processar. N&atilde;o s&atilde;o necess&aacute;rios delimitadores especiais, mas &eacute; preciso citar entre aspas strings que contenham caracteres especiais. Como boas pr&aacute;ticas, &eacute; recomendado citar todas as strings. Express&otilde;es regulares s&atilde;o delimitadas utilizando barras (/regex/). N&atilde;o devem ser usadas aspas. O atributo a ser usado como compara&ccedil;&atilde;o &eacute; definido no par&acirc;metro CLASSITEM do n&iacute;vel do LAYER. Express&otilde;es l&oacute;gicas te permitem construir testes bastante complexos em um ou mais atributos e portanto s&oacute; s&atilde;o permitas com shapefiles. Express&otilde;es l&oacute;gicas s&atilde;o delimitadas com par&ecirc;nteses &#8220;(express&atilde;o)&#8221;. Nomes de atributos s&atilde;o delimitados por colchetes &#8220;[ATRIBUTO]&#8221;. Estes nomes s&atilde;o sens&iacute;veis a caracteres e devem concordar com os itens no shapefile. Por exemplo: EXPRESSION ([POPULATION] &gt; 50000 AND [LANGUAGE] eq FRENCH ). Os seguintes operadores l&oacute;gicos s&atilde;o suportados: =, &gt;, &lt;, &lt;=, &gt;=, =, or, and, lt, gt, ge, le, eq, ne, in, ~, ~*. Este n&iacute;vel de complexidade &eacute; mais lento a se processar. Existe uma fun&ccedil;&atilde;o de string: lenght(). Ela computa o comprimento de uma string. Exemplo: EXPRESSION (length( [NAME_E] ) &lt; 8). Compara&ccedil;&atilde;o de strings e express&otilde;es regulares trabalham a partir do CLASSITEM definido no n&iacute;vel da LAYER. Voc&ecirc; pode combinar diferentes tipos de express&otilde;es juntamente com diferentes classes de uma camada. ",
  310 + {ajuda:$trad("expressaoClasse",i3GEOadmin.editormapfile.dicionario),
311 311 titulo:"Expression",id:"expression",value:dados.expression,tipo:"text"},
312   - {ajuda:"Nome completo do arquivo de imagem da legenda para a CLASS. Esta imagem &eacute; usada ao construir uma legenda (ou quando requisitando um &iacute;cone de legenda via MapScript ou uma aplica&ccedil;&atilde;o CGI).",
  312 + {ajuda:$trad("arquivoLegenda",i3GEOadmin.editormapfile.dicionario),
313 313 titulo:"Keyimage",id:"keyimage",value:dados.keyimage,tipo:"text"},
314   - {ajuda:"Escala m&aacute;xima na qual a CLASS &eacute; desenhada. A escala &eacute; dada como o denominador da fra&ccedil;&atilde;o da escala. Por exemplo, para uma mapa na escala 1:24,000 use 24000.",
  314 + {ajuda:$trad("escalaMax",i3GEOadmin.editormapfile.dicionario),
315 315 titulo:"Maxscale",id:"maxscale",value:dados.maxscale,tipo:"text"},
316   - {ajuda:"Escala m&iacute;nima na qual a CLASS &eacute; desenhada. A escala &eacute; dada como o denominador da fra&ccedil;&atilde;o da escala. Por exemplo, para uma mapa na escala 1:24,000 use 24000.",
  316 + {ajuda:$trad("escalaMin",i3GEOadmin.editormapfile.dicionario),
317 317 titulo:"Minscale",id:"minscale",value:dados.minscale,tipo:"text"}
318 318 ]
319 319 };
320 320 var ins = "";
321 321 if(dados.colunas != "")
322 322 {
323   - ins += "<p>O layer possu&iacute; as seguintes colunas na tabela de atributos: ";
  323 + ins += "<p>"+ $trad("atributos",i3GEOadmin.editormapfile.dicionario) +"";
324 324 ins += dados.colunas+"</p>";
325 325 }
326 326 ins += core_geraLinhas(param);
... ...