Commit 4366d29da47ff08a020ead9cb53d0430aae288e7

Authored by Edmar Moretti
1 parent 4d6c02e5

Verificação da permissão de acesso ao arquivo sqlite do sistema de administração

classesjs/dicionario.js
... ... @@ -130,14 +130,14 @@ it:"Disattiva legenda"
130 130 "p19": [
131 131 {
132 132 pt: "Ativa ou desativa a legenda de um tema na opção de impressão do mapa",
133   -en:"Ativa ou desativa a legenda de um tema na opção de impressão do mapa",
  133 +en:"Enables or disables the legend of a theme in the print option on the map",
134 134 es:"Ativa ou desativa a legenda de um tema na opção de impressão do mapa",
135 135 it:"Ativa ou desativa a legenda de um tema na opção de impressão do mapa"
136 136 }],
137 137 "p20": [
138 138 {
139 139 pt: "Tela remota",
140   -en:"Tela remota",
  140 +en:"Remote screen",
141 141 es:"Tela remota",
142 142 it:"Tela remota"
143 143 }],
... ... @@ -188,8 +188,8 @@ it:"Proprietà"
188 188 "u1": [
189 189 {
190 190 pt: "Sobre o i3Geo",
191   -en:"About",
192   -es:"Sobre I3Geo",
  191 +en:"About i3Geo",
  192 +es:"Sobre i3Geo",
193 193 it:"Informazioni WebGis"
194 194 }],
195 195 "u2": [
... ... @@ -216,7 +216,7 @@ it:"Guida"
216 216 "u4a": [
217 217 {
218 218 pt: "Manual do usuário",
219   -en:"Manual do usuário",
  219 +en:"User manual",
220 220 es:"Manual do usuário",
221 221 it:"Manual do usuário"
222 222 }],
... ... @@ -426,14 +426,14 @@ it:"Altri"
426 426 "u28": [
427 427 {
428 428 pt: "Centro médio",
429   -en:"Centro médio",
  429 +en:"Mean center",
430 430 es:"Centro médio",
431 431 it:"Centro médio"
432 432 }],
433 433 "u29": [
434 434 {
435 435 pt: "Editor vetorial",
436   -en:"Editor vetorial",
  436 +en:"Vector editor",
437 437 es:"Editor vetorial",
438 438 it:"Editor vetorial"
439 439 }],
... ... @@ -455,14 +455,14 @@ it:"Trascina qui per rimuovere"
455 455 "t2a":[
456 456 {
457 457 pt:"Filtra a lista de camadas",
458   -en:"filtra a lista de camadas",
  458 +en:"Filters the list of layers",
459 459 es:"filtra a lista de camadas",
460 460 it:"filtra a lista de camadas"
461 461 }],
462 462 "t2b":[
463 463 {
464 464 pt:"Abre a legenda do mapa",
465   -en:"Abre a legenda do mapa",
  465 +en:"Opens the map legend",
466 466 es:"Abre a legenda do mapa",
467 467 it:"Abre a legenda do mapa"
468 468 }],
... ... @@ -476,14 +476,14 @@ it:"Fare clic per attivare o disattivare questo tema. Dopo aver modificato lo st
476 476 "t3a":[
477 477 {
478 478 pt:"Clique para ligar todos os temas",
479   -en:"Turn all layers layer on",
  479 +en:"Turn all layers on",
480 480 es:"Haga clic para conectar los temas",
481 481 it:"Turn all layers on"
482 482 }],
483 483 "t3b":[
484 484 {
485 485 pt:"Clique para desligar todos os temas",
486   -en:"Turn all layers layer off",
  486 +en:"Turn all layers off",
487 487 es:"Haga clic para desconectar los temas",
488 488 it:"Turn all layers off"
489 489 }],
... ... @@ -771,14 +771,14 @@ it:"Grafico"
771 771 "t37a":[
772 772 {
773 773 pt:"Tema com gráficos",
774   -en:"Graphic",
  774 +en:"Theme chart",
775 775 es:"Gráfico",
776 776 it:"Grafico"
777 777 }],
778 778 "t37b":[
779 779 {
780 780 pt:"Gráfico interativo",
781   -en:"Graphic",
  781 +en:"Interactive chart",
782 782 es:"Gráfico",
783 783 it:"Grafico"
784 784 }],
... ... @@ -799,7 +799,7 @@ it:"SLD..."
799 799 "t40":[
800 800 {
801 801 pt:"Abre a ferramenta que permite alterar o SQL de acesso aos dados",
802   -en:"Abre a ferramenta que permite alterar o SQL de acesso aos dados",
  802 +en:"Open the tool that lets you change the SQL data access",
803 803 es:"Abre a ferramenta que permite alterar o SQL de acesso aos dados",
804 804 it:"Abre a ferramenta que permite alterar o SQL de acesso aos dados"
805 805 }],
... ... @@ -820,7 +820,7 @@ it:"Tenda..."
820 820 "t43":[
821 821 {
822 822 pt:"Aplicar SLD",
823   -en:"Aplicar SLD...",
  823 +en:"SLD apply...",
824 824 es:"Aplicar SLD...",
825 825 it:"Aplicar SLD..."
826 826 }],
... ... @@ -834,35 +834,35 @@ it:"Salva mapfile"
834 834 "t45": [
835 835 {
836 836 pt: "Comentar",
837   -en:"Comentar",
  837 +en:"Comment",
838 838 es:"Comentar",
839 839 it:"Comentar"
840 840 }],
841 841 "t46": [
842 842 {
843   -pt: "Mais populares",
844   -en:"Mais populares",
  843 +pt:"Mais populares",
  844 +en:"Most popular",
845 845 es:"Mais populares",
846 846 it:"Mais populares"
847 847 }],
848 848 "t47": [
849 849 {
850 850 pt: "Intervalo em segundos após o qual a camada será atualizada. Para ignorar, deixe em branco",
851   -en:"Intervalo em segundos após o qual a camada será atualizada. Para ignorar, deixe em branco",
  851 +en:"Interval in seconds after which the layer will be updated. To ignore, leave blank",
852 852 es:"Intervalo em segundos após o qual a camada será atualizada. Para ignorar, deixe em branco",
853 853 it:"Intervalo em segundos após o qual a camada será atualizada. Para ignorar, deixe em branco"
854 854 }],
855 855 "t48": [
856 856 {
857 857 pt: "Temporizador",
858   -en:"Temporizador",
  858 +en:"Timer",
859 859 es:"Temporizador",
860 860 it:"Temporizador"
861 861 }],
862 862 "t49": [
863 863 {
864   -pt: "Mapa temático 3d",
865   -en:"Mapa temático 3d",
  864 +pt:"Mapa temático 3d",
  865 +en:"Thematic map 3d",
866 866 es:"Mapa temático 3d",
867 867 it:"Mapa temático 3d"
868 868 }],
... ... @@ -898,7 +898,7 @@ it:"Download dei dati"
898 898 "a3a":[
899 899 {
900 900 pt:"Importar Web Map Context (WMC)",
901   -en:"Importar Web Map Context (WMC)",
  901 +en:"Web Map Context (WMC) Importer",
902 902 es:"Importar Web Map Context (WMC)",
903 903 it:"Importar Web Map Context (WMC)"
904 904 }],
... ... @@ -1111,7 +1111,7 @@ it:"Modificare la scala della mappa adeguandola per mostrare la stessa copertura
1111 1111 "d2t":[
1112 1112 {
1113 1113 pt:"enquadramento inicial",
1114   -en:"enquadramento inicial",
  1114 +en:"initial extent",
1115 1115 es:"enquadramento inicial",
1116 1116 it:"enquadramento inicial"
1117 1117 }],
... ... @@ -1125,7 +1125,7 @@ it:"Ampliare la mappa - pone il punto cliccato nel centro dello schermo o ingran
1125 1125 "d3t":[
1126 1126 {
1127 1127 pt:"clique e arraste para ampliar",
1128   -en:"clique e arraste para ampliar",
  1128 +en:"click and drag to enlarge",
1129 1129 es:"clique e arraste para ampliar",
1130 1130 it:"clique e arraste para ampliar"
1131 1131 }],
... ... @@ -1139,7 +1139,7 @@ it:"Sposta la regione visibile sulla mappa. Dopo averla attivata, cliccare e tra
1139 1139 "d4t":[
1140 1140 {
1141 1141 pt:"clique e arraste para deslocar",
1142   -en:"clique e arraste para deslocar",
  1142 +en:"click and drag to move",
1143 1143 es:"clique e arraste para deslocar",
1144 1144 it:"clique e arraste para deslocar"
1145 1145 }],
... ... @@ -1153,7 +1153,7 @@ it:"Estendi la mappa tenendo come riferimento il centro corrente."
1153 1153 "d5t":[
1154 1154 {
1155 1155 pt:"aproximar",
1156   -en:"aproximar",
  1156 +en:"zoom in",
1157 1157 es:"aproximar",
1158 1158 it:"aproximar"
1159 1159 }],
... ... @@ -1167,7 +1167,7 @@ it:"Riduci la mappa tenendo come referimento il centro corrente"
1167 1167 "d6t":[
1168 1168 {
1169 1169 pt:"afastar",
1170   -en:"afastar",
  1170 +en:"zoom out",
1171 1171 es:"afastar",
1172 1172 it:"afastar"
1173 1173 }],
... ... @@ -1181,7 +1181,7 @@ it:"Mostra gli informazioni su un punto sulla mappa. Dopo averla attivata, fare
1181 1181 "d7t":[
1182 1182 {
1183 1183 pt:"clique para identificar",
1184   -en:"clique para identificar",
  1184 +en:"click to identify",
1185 1185 es:"clique para identificar",
1186 1186 it:"clique para identificar"
1187 1187 }],
... ... @@ -1195,7 +1195,7 @@ it:"Mostra gli informazioni su un punto sulla mappa. Dopo averla attivata, ferma
1195 1195 "d7at":[
1196 1196 {
1197 1197 pt:"etiqueta",
1198   -en:"etiqueta",
  1198 +en:"label",
1199 1199 es:"etiqueta",
1200 1200 it:"etiqueta"
1201 1201 }],
... ... @@ -1209,7 +1209,7 @@ it:"Mostra la estensione geografica corrente in coordinate geografiche"
1209 1209 "d8t":[
1210 1210 {
1211 1211 pt:"extensão atual",
1212   -en:"extensão atual",
  1212 +en:"total extent",
1213 1213 es:"extensão atual",
1214 1214 it:"extensão atual"
1215 1215 }],
... ... @@ -1223,7 +1223,7 @@ it:"Apertura/chiusura della mappa di riferimento"
1223 1223 "d9t":[
1224 1224 {
1225 1225 pt:"mapa de referência",
1226   -en:"mapa de referência",
  1226 +en:"reference map",
1227 1227 es:"mapa de referência",
1228 1228 it:"mapa de referência"
1229 1229 }],
... ... @@ -1244,7 +1244,7 @@ it:"Ricerca dati su Wikipedia nell'ambito corrente della mappa. Fare uno zoom su
1244 1244 "d11t":[
1245 1245 {
1246 1246 pt:"buscar na Wikipédia",
1247   -en:"buscar na Wikipédia",
  1247 +en:"search in Wikipédia",
1248 1248 es:"buscar na Wikipédia",
1249 1249 it:"buscar na Wikipédia"
1250 1250 }],
... ... @@ -1307,7 +1307,7 @@ it:"Progetto di confluenza. Punti di intersezione delle coordinate osservate in
1307 1307 "d17t":[
1308 1308 {
1309 1309 pt:"confluências",
1310   -en:"confluências",
  1310 +en:"confluences",
1311 1311 es:"confluências",
1312 1312 it:"confluências"
1313 1313 }],
... ... @@ -1321,7 +1321,7 @@ it:"Apri lente di ingrandimento"
1321 1321 "d18t":[
1322 1322 {
1323 1323 pt:"lente",
1324   -en:"lente",
  1324 +en:"lens",
1325 1325 es:"lente",
1326 1326 it:"lente"
1327 1327 }],
... ... @@ -1342,7 +1342,7 @@ it:"Ricarica la mappa con la configurazione iniziale."
1342 1342 "d20t":[
1343 1343 {
1344 1344 pt:"reinicia",
1345   -en:"reinicia",
  1345 +en:"restart",
1346 1346 es:"reinicia",
1347 1347 it:"reinicia"
1348 1348 }],
... ... @@ -1356,7 +1356,7 @@ it:"Misura la distanza tra due o più punti cliccati sulla mappa (minore distanza
1356 1356 "d21t":[
1357 1357 {
1358 1358 pt:"distância",
1359   -en:"distância",
  1359 +en:"distance",
1360 1360 es:"distância",
1361 1361 it:"distância"
1362 1362 }],
... ... @@ -1370,7 +1370,7 @@ it:"Misura l'area di un poligono tracciato sullo schermo. Il calcolo della super
1370 1370 "d21at":[
1371 1371 {
1372 1372 pt:"área",
1373   -en:"área",
  1373 +en:"area",
1374 1374 es:"área",
1375 1375 it:"área"
1376 1376 }],
... ... @@ -1384,7 +1384,7 @@ it:"Inserire punti sulla mappa in coordinate geografiche. I punti inseriti posso
1384 1384 "d22t":[
1385 1385 {
1386 1386 pt:"inserir pontos",
1387   -en:"inserir pontos",
  1387 +en:"insert points",
1388 1388 es:"inserir pontos",
1389 1389 it:"inserir pontos"
1390 1390 }],
... ... @@ -1405,7 +1405,7 @@ it:"Aprire gli strumenti per selezionare gli elementi di un tema. Gli elementi s
1405 1405 "d24t":[
1406 1406 {
1407 1407 pt:"Selecionar",
1408   -en:"Selecionar",
  1408 +en:"Select",
1409 1409 es:"Selecionar",
1410 1410 it:"Selecionar"
1411 1411 }],
... ... @@ -1419,7 +1419,7 @@ it:"Inserisci il testo sulla mappa cliccando su un punto. Utilizzare questa opzi
1419 1419 "d25t":[
1420 1420 {
1421 1421 pt:"Inserir texto",
1422   -en:"Inserir texto",
  1422 +en:"Text insert",
1423 1423 es:"Inserir texto",
1424 1424 it:"Inserir texto"
1425 1425 }],
... ... @@ -1447,7 +1447,7 @@ it:"Attendere..."
1447 1447 "d29":[
1448 1448 {
1449 1449 pt:"Estações metar",
1450   -en:"Estações metar",
  1450 +en:"Metar stations",
1451 1451 es:"Estações metar",
1452 1452 it:"Estações metar"
1453 1453 }],
... ... @@ -1461,7 +1461,7 @@ it:"Linha do tempo"
1461 1461 "d31":[
1462 1462 {
1463 1463 pt:"Não existe nenhuma camada com etiquetas ativas",
1464   -en:"Não existe nenhuma camada com etiquetas ativas",
  1464 +en:"There is no layer with active labels",
1465 1465 es:"Não existe nenhuma camada com etiquetas ativas",
1466 1466 it:"Não existe nenhuma camada com etiquetas ativas"
1467 1467 }],
... ... @@ -1475,20 +1475,20 @@ it:"Applicazioni"
1475 1475 "ge1":[
1476 1476 {
1477 1477 pt:"Navegação com o mouse",
1478   -en:"Navegação com o mouse",
  1478 +en:"Mouse navigation",
1479 1479 es:"Navegação com o mouse",
1480 1480 it:"Navegação com o mouse"
1481 1481 }],
1482 1482 "ge2":[
1483 1483 {
1484 1484 pt:"Barra de status",
1485   -en:"Barra de status",
  1485 +en:"Status bar",
1486 1486 es:"Barra de status",
1487 1487 it:"Barra de status"
1488 1488 }],
1489 1489 "ge3":[
1490 1490 {
1491   -pt:"Mapa de referência",
  1491 +pt:"Reference map",
1492 1492 en:"Mapa de referência",
1493 1493 es:"Mapa de referência",
1494 1494 it:"Mapa de referência"
... ... @@ -1496,59 +1496,142 @@ it:"Mapa de referência"
1496 1496 "ge4":[
1497 1497 {
1498 1498 pt:"Escala e legenda",
1499   -en:"Escala e legenda",
  1499 +en:"Scale and legend",
1500 1500 es:"Escala e legenda",
1501 1501 it:"Escala e legenda"
1502 1502 }],
1503 1503 "ge5":[
1504 1504 {
1505 1505 pt:"Atmosfera",
1506   -en:"Atmosfera",
  1506 +en:"Atmosphere",
1507 1507 es:"Atmosfera",
1508 1508 it:"Atmosfera"
1509 1509 }],
1510 1510 "ge6":[
1511 1511 {
1512 1512 pt:"Grade de coordenadas",
1513   -en:"Grade de coordenadas",
  1513 +en:"Coordinates grid",
1514 1514 es:"Grade de coordenadas",
1515 1515 it:"Grade de coordenadas"
1516 1516 }],
1517 1517 "ge7":[
1518 1518 {
1519 1519 pt:"Luz do sol",
1520   -en:"Luz do sol",
  1520 +en:"Sunshine",
1521 1521 es:"Luz do sol",
1522 1522 it:"Luz do sol"
1523 1523 }],
1524 1524 "ge8":[
1525 1525 {
1526 1526 pt:"Limites políticos",
1527   -en:"Limites políticos",
  1527 +en:"Political boundaries",
1528 1528 es:"Limites políticos",
1529 1529 it:"Limites políticos"
1530 1530 }],
1531 1531 "ge9":[
1532 1532 {
1533 1533 pt:"Construções em 3d",
1534   -en:"Construções em 3d",
  1534 +en:"Buildings in 3D",
1535 1535 es:"Construções em 3d",
1536 1536 it:"Construções em 3d"
1537 1537 }],
1538 1538 "ge10":[
1539 1539 {
1540 1540 pt:"Estradas",
1541   -en:"Estradas",
  1541 +en:"Roads",
1542 1542 es:"Estradas",
1543 1543 it:"Estradas"
1544 1544 }],
1545 1545 "ge11":[
1546 1546 {
1547 1547 pt:"Terreno",
1548   -en:"Terreno",
  1548 +en:"Terrain",
1549 1549 es:"Terreno",
1550 1550 it:"Terreno"
  1551 +}],
  1552 +"x1":[
  1553 +{
  1554 +pt:"Página principal",
  1555 +en:"Home",
  1556 +es:"Página principal",
  1557 +it:"Página principal"
  1558 +}],
  1559 +"x2":[
  1560 +{
  1561 +pt:"Lista de menus",
  1562 +en:"Menu list",
  1563 +es:"Lista de menus",
  1564 +it:"Lista de menus"
  1565 +}],
  1566 +"x3":[
  1567 +{
  1568 +pt:"Miniaturas",
  1569 +en:"Thumbnails",
  1570 +es:"Miniaturas",
  1571 +it:"Miniaturas"
  1572 +}],
  1573 +"x4":[
  1574 +{
  1575 +pt:"Pesquisa na INDE",
  1576 +en:"Search in SDI",
  1577 +es:"Pesquisa na INDE",
  1578 +it:"Pesquisa na INDE"
  1579 +}],
  1580 +"x5":[
  1581 +{
  1582 +pt:"Editar subgrupos",
  1583 +en:"Subgroups editing",
  1584 +es:"Editar subgrupos",
  1585 +it:"Editar subgrupos"
  1586 +}],
  1587 +"x6":[
  1588 +{
  1589 +pt:"Editar temas",
  1590 +en:"Theme editing",
  1591 +es:"Editar temas",
  1592 +it:"Editar temas"
  1593 +}],
  1594 +"x7":[
  1595 +{
  1596 +pt:"opção visível apenas para editores",
  1597 +en:"option visible only to editors",
  1598 +es:"opção visível apenas para editores",
  1599 +it:"opção visível apenas para editores"
  1600 +}],
  1601 +"x8":[
  1602 +{
  1603 +pt:"Sistema de administração",
  1604 +en:"Management System",
  1605 +es:"Sistema de administração",
  1606 +it:"Sistema de administração"
  1607 +}],
  1608 +"x9":[
  1609 +{
  1610 +pt:"Editar árvore",
  1611 +en:"Edit tree",
  1612 +es:"Editar árvore",
  1613 +it:"Editar árvore"
  1614 +}],
  1615 +"x10":[
  1616 +{
  1617 +pt:"Editar menus",
  1618 +en:"Edit menu",
  1619 +es:"Editar menus",
  1620 +it:"Editar menus"
  1621 +}],
  1622 +"x11":[
  1623 +{
  1624 +pt:"Mostra a legenda em uma janela",
  1625 +en:"Show the legend in a window",
  1626 +es:"Mostra a legenda em uma janela",
  1627 +it:"Mostra a legenda em uma janela"
  1628 +}],
  1629 +"x12":[
  1630 +{
  1631 +pt:"",
  1632 +en:"",
  1633 +es:"",
  1634 +it:""
1551 1635 }]
1552   -
1553 1636 };
1554 1637 //YAHOO.log("carregou dicionario", "Classes i3geo");
1555 1638 \ No newline at end of file
... ...
classesphp/funcoes_gerais.php
... ... @@ -2967,5 +2967,65 @@ function retornaShapesSelecionados($objLayer,$map_file,$objMapa){
2967 2967 }
2968 2968 return $shapes;
2969 2969 }
  2970 +/*
  2971 +Function: permissoesarquivo
  2972 +
  2973 +Retorna as permissões de um arquivo
  2974 +
  2975 +Parametros:
2970 2976  
2971   -?>
2972 2977 \ No newline at end of file
  2978 +$arquivo
  2979 +*/
  2980 +function permissoesarquivo($arquivo){
  2981 + $perms = fileperms($arquivo);
  2982 +
  2983 + if (($perms & 0xC000) == 0xC000) {
  2984 + // Socket
  2985 + $info = 's';
  2986 + } elseif (($perms & 0xA000) == 0xA000) {
  2987 + // Symbolic Link
  2988 + $info = 'l';
  2989 + } elseif (($perms & 0x8000) == 0x8000) {
  2990 + // Regular
  2991 + $info = '-';
  2992 + } elseif (($perms & 0x6000) == 0x6000) {
  2993 + // Block special
  2994 + $info = 'b';
  2995 + } elseif (($perms & 0x4000) == 0x4000) {
  2996 + // Directory
  2997 + $info = 'd';
  2998 + } elseif (($perms & 0x2000) == 0x2000) {
  2999 + // Character special
  3000 + $info = 'c';
  3001 + } elseif (($perms & 0x1000) == 0x1000) {
  3002 + // FIFO pipe
  3003 + $info = 'p';
  3004 + } else {
  3005 + // Unknown
  3006 + $info = 'u';
  3007 + }
  3008 +
  3009 + // Owner
  3010 + $info .= (($perms & 0x0100) ? 'r' : '-');
  3011 + $info .= (($perms & 0x0080) ? 'w' : '-');
  3012 + $info .= (($perms & 0x0040) ?
  3013 + (($perms & 0x0800) ? 's' : 'x' ) :
  3014 + (($perms & 0x0800) ? 'S' : '-'));
  3015 +
  3016 + // Group
  3017 + $info .= (($perms & 0x0020) ? 'r' : '-');
  3018 + $info .= (($perms & 0x0010) ? 'w' : '-');
  3019 + $info .= (($perms & 0x0008) ?
  3020 + (($perms & 0x0400) ? 's' : 'x' ) :
  3021 + (($perms & 0x0400) ? 'S' : '-'));
  3022 +
  3023 + // World
  3024 + $info .= (($perms & 0x0004) ? 'r' : '-');
  3025 + $info .= (($perms & 0x0002) ? 'w' : '-');
  3026 + $info .= (($perms & 0x0001) ?
  3027 + (($perms & 0x0200) ? 't' : 'x' ) :
  3028 + (($perms & 0x0200) ? 'T' : '-'));
  3029 +
  3030 + return $info;
  3031 +}
  3032 +?>
... ...
testainstal.php
... ... @@ -117,6 +117,10 @@ if(in_array($ip, $editores)){
117 117 echo "<br>Você é um editor cadastrado<br><br>\n";
118 118 echo "Este php está em ".getcwd()."\n";
119 119 echo "<br>O diretório de arquivos SESSION temporário é: ".session_save_path()."<br>\n";
  120 + if($conexaoadmin == "" && file_exists($locaplic."/admin/admin.db")){
  121 + echo "<br>As permissões do banco de dados $locaplic/admin/admin.db são (se o arquivo estiver bloqueado, o sistema de administração não irá funcionar):<br>";
  122 + echo permissoesarquivo($locaplic."/admin/admin.db")."<br>";
  123 + }
120 124 }
121 125 else{
122 126 echo "Você não é um editor cadastrado\n";
... ... @@ -282,4 +286,4 @@ if(screen.availWidth &gt; 700)
282 286 {document.getElementById("divGeral").style.width = "700px";}
283 287 </script>
284 288 </body>
285   -</html>
286 289 \ No newline at end of file
  290 +</html>
... ...