Commit da407e41ffcaf7020967b834292d9bfc366eb0ea
1 parent
fa723b9a
Exists in
master
and in
7 other branches
Adição de uma nova tabela no sistema de admnistração para armazenar o número de acessos de cada tema
Showing
9 changed files
with
71 additions
and
40 deletions
Show diff stats
admin/admin.db
No preview for this file type
admin/php/admin.php
... | ... | @@ -189,21 +189,21 @@ function pegaDados($sql,$locaplic="") |
189 | 189 | include("$locaplic/admin/php/conexao.php"); |
190 | 190 | error_reporting(E_ALL); |
191 | 191 | $q = $dbh->query($sql,PDO::FETCH_ASSOC); |
192 | - //var_dump($q); | |
193 | 192 | if($q) |
194 | 193 | { |
195 | 194 | $resultado = $q->fetchAll(); |
196 | 195 | $dbh = null; |
197 | 196 | $dbhw = null; |
198 | - //error_reporting(0); | |
199 | 197 | return $resultado; |
200 | 198 | } |
201 | 199 | else |
202 | 200 | { |
203 | - $e = $dbh->errorInfo(); | |
204 | - echo " erro: ".$e[2]; | |
205 | - //echo $sql; | |
206 | - return; | |
201 | + $e = $dbh->errorInfo(); | |
202 | + //$e1 = $dbhw->errorInfo(); | |
203 | + $dbh = null; | |
204 | + $dbhw = null; | |
205 | + //echo " erro: ".$e[2]; | |
206 | + throw new Exception(" erro admin.php funcao pegaDados: <br><span style=color:red >".$e[2]."<br><span style=color:green >"); | |
207 | 207 | } |
208 | 208 | } |
209 | 209 | /* | ... | ... |
admin/php/classe_arvore.php
... | ... | @@ -85,8 +85,10 @@ idioma {string} - default = "pt" |
85 | 85 | $this->sql_temasraiz = "select id_raiz,i3geoadmin_raiz.id_tema,$coluna as nome_tema,tipoa_tema,perfil FROM i3geoadmin_raiz LEFT JOIN i3geoadmin_temas ON i3geoadmin_temas.id_tema = i3geoadmin_raiz.id_tema "; |
86 | 86 | $this->sql_temasSubgrupo = "select i3geoadmin_temas.tipoa_tema, i3geoadmin_temas.codigo_tema,i3geoadmin_temas.tags_tema,i3geoadmin_n3.id_n3,i3geoadmin_temas.$coluna as nome_tema,i3geoadmin_n3.publicado,i3geoadmin_n3.n3_perfil,i3geoadmin_n3.id_tema,i3geoadmin_temas.download_tema,i3geoadmin_temas.ogc_tema from i3geoadmin_n3 LEFT JOIN i3geoadmin_temas ON i3geoadmin_n3.id_tema = i3geoadmin_temas.id_tema "; |
87 | 87 | |
88 | - $this->sql_temas = "select kmz_tema,nacessos,id_tema,kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,$coluna as nome_tema,codigo_tema from i3geoadmin_temas "; | |
88 | + //$this->sql_temas = "select kmz_tema,nacessos,id_tema,kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,$coluna as nome_tema,codigo_tema from i3geoadmin_temas "; | |
89 | 89 | |
90 | + $this->sql_temas = "select kmz_tema,b.soma as nacessos,id_tema,kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,$coluna as nome_tema,codigo_tema from i3geoadmin_temas as a,(SELECT c.codigo_tema codigo_soma,sum( r.nacessos) as soma FROM i3geoadmin_temas c LEFT JOIN i3geoadmin_acessostema r ON (c.codigo_tema = r.codigo_tema) group by c.codigo_tema) as b WHERE a.codigo_tema = b.codigo_soma "; | |
91 | + | |
90 | 92 | $this->locaplic = $locaplic; |
91 | 93 | $dbh = ""; |
92 | 94 | error_reporting(0); |
... | ... | @@ -293,7 +295,7 @@ Return: |
293 | 295 | |
294 | 296 | {array} |
295 | 297 | */ |
296 | - function procuraTemasEstrela ($nivel,$fatorestrela,$perfil) | |
298 | + function procuraTemasEstrela($nivel,$fatorestrela,$perfil) | |
297 | 299 | { |
298 | 300 | $menus = $this->pegaListaDeMenus($perfil); |
299 | 301 | $resultado = array(); |
... | ... | @@ -330,8 +332,9 @@ Return: |
330 | 332 | if (strtolower($t["download_tema"]) == "nao") |
331 | 333 | {$down = "nao";} |
332 | 334 | $texto = array("miniatura"=>$miniatura,"tid"=>$t["codigo_tema"],"nome"=>$this->converte($tema["nome_tema"]),"link"=>$t["link_tema"],"download"=>$down); |
333 | - $n = abs($t["nacessos"] / $fatorestrela); | |
335 | + $n = intval($t["nacessos"] / $fatorestrela); | |
334 | 336 | if($n >= 5){$n = 5;} |
337 | + | |
335 | 338 | if ($n == $nivel) |
336 | 339 | {$temasRaizGrupo[] = $texto;} |
337 | 340 | } |
... | ... | @@ -455,7 +458,7 @@ Return: |
455 | 458 | */ |
456 | 459 | function pegaTema($id_tema) |
457 | 460 | { |
458 | - return $this->execSQL($this->sql_temas."where id_tema = '$id_tema' "); | |
461 | + return $this->execSQL($this->sql_temas." and id_tema = '$id_tema' "); | |
459 | 462 | } |
460 | 463 | /* |
461 | 464 | Function: pegaTemasSubGrupo | ... | ... |
admin/php/estatisticas.php
... | ... | @@ -46,12 +46,11 @@ i3geo/admin/php/estatisticas.php |
46 | 46 | |
47 | 47 | */ |
48 | 48 | include_once("admin.php"); |
49 | - | |
50 | 49 | $totaltemas = count(pegaDados("select * from i3geoadmin_temas")); |
51 | -$temasvalidos = pegaDados("select * from i3geoadmin_temas where codigo_tema <> ''"); | |
50 | +$temasvalidos = pegaDados("select codigo_tema,nome_tema,download_tema,kml_tema,ogc_tema,link_tema,tags_tema from i3geoadmin_temas where codigo_tema <> ''"); | |
52 | 51 | $temasassocsubgrupos = pegaDados("select id_tema from i3geoadmin_n3 group by id_tema"); |
52 | +$nacessostema = pegaDados("select b.nome_tema,sum(a.nacessos) as soma,a.codigo_tema from i3geoadmin_acessostema as a,i3geoadmin_temas as b where a.codigo_tema = b.codigo_tema and a.nacessos > 0 group by a.codigo_tema"); | |
53 | 53 | $ntags = pegaDados("select nome from i3geoadmin_tags"); |
54 | -error_reporting(0); | |
55 | 54 | $totaltemasvalidos = count($temasvalidos); |
56 | 55 | $codigostemas = array(); |
57 | 56 | $ncodigostemas = array(); |
... | ... | @@ -61,13 +60,14 @@ $nkmltemas = 0; |
61 | 60 | $nogctemas = 0; |
62 | 61 | $nsemlinktemas = 0; |
63 | 62 | $nsemtagstemas = 0; |
64 | -$nacessosmaiorqueum = 0; | |
65 | -$nacessosmaiorquedez = 0; | |
66 | -$nacessosmaiorquecem = 0; | |
63 | +$nacessosmaiorqueum = count(pegaDados("select sum(nacessos) as soma from i3geoadmin_acessostema where nacessos > 0 group by codigo_tema")); | |
64 | +$nacessosmaiorquedez = count(pegaDados("select (select sum(nacessos) as soma from i3geoadmin_acessostema where nacessos > 0 group by codigo_tema) as soma where soma > 10")); | |
65 | +$nacessosmaiorquecem = count(pegaDados("select (select sum(nacessos) as soma from i3geoadmin_acessostema where nacessos > 0 group by codigo_tema) as soma where soma > 100")); | |
67 | 66 | $temasacessos = array(); |
67 | +error_reporting(0); | |
68 | 68 | foreach($temasvalidos as $tema){ |
69 | - $ncodigostemas[$tema[codigo_tema]]++; | |
70 | - $nnomestemas[$tema[nome_tema]]++; | |
69 | + $ncodigostemas[$tema["codigo_tema"]]++; | |
70 | + $nnomestemas[$tema["nome_tema"]]++; | |
71 | 71 | if(strtolower($tema["download_tema"]) == "sim") |
72 | 72 | {$ndownloadtemas++;} |
73 | 73 | if(strtolower($tema["kml_tema"]) != "nao") |
... | ... | @@ -78,6 +78,7 @@ foreach($temasvalidos as $tema){ |
78 | 78 | {$nsemlinktemas++;} |
79 | 79 | if($tema["tags_tema"] == "") |
80 | 80 | {$nsemtagstemas++;} |
81 | + /* | |
81 | 82 | if($tema["nacessos"] > 0) |
82 | 83 | {$nacessosmaiorqueum++;} |
83 | 84 | if($tema["nacessos"] > 10) |
... | ... | @@ -88,6 +89,10 @@ foreach($temasvalidos as $tema){ |
88 | 89 | //$temasmaisdecem[] = $tema[nome_tema]; |
89 | 90 | } |
90 | 91 | $temasacessos[$tema[nome_tema]] = $tema["nacessos"]; |
92 | + */ | |
93 | +} | |
94 | +foreach($nacessostema as $tema){ | |
95 | + $temasacessos[$tema["nome_tema"]] = $tema["soma"]; | |
91 | 96 | } |
92 | 97 | $temasmaisdeum = array(); |
93 | 98 | foreach ($ncodigostemas as $n) |
... | ... | @@ -124,7 +129,7 @@ echo "<tr><td>&nbsp;</td><td>&nbsp;</td><td></td></tr>"; |
124 | 129 | echo "<tr><td><b>Número de tags: </b></td><td>".count($ntags)."</td><td></td></tr>"; |
125 | 130 | |
126 | 131 | echo "</table>"; |
127 | -echo "<p><b>Aceesos por tema</b></p>"; | |
132 | +echo "<p><b>Acesos por tema</b></p>"; | |
128 | 133 | arsort($temasacessos); |
129 | 134 | $temasacessos2 = array_keys($temasacessos); |
130 | 135 | for($i=0;$i<=count($temasacessos2);$i++) | ... | ... |
admin/php/upgradebanco44_45.php
... | ... | @@ -38,23 +38,27 @@ i3geo/admin/php/criabanco.php |
38 | 38 | */ |
39 | 39 | $funcao = ""; |
40 | 40 | include_once("admin.php"); |
41 | -error_reporting(0); | |
41 | +include_once("conexao.php"); | |
42 | + | |
42 | 43 | if(verificaEditores($editores) == "nao") |
43 | 44 | {echo "Vc nao e um editor cadastrado. Apenas os editores definidos em i3geo/ms_configura.php podem acessar o sistema de administracao.";exit;} |
44 | - | |
45 | +error_reporting(E_ALL); | |
45 | 46 | $tabelas = array( |
46 | -"CREATE TABLE i3geoadmin_comentarios (comentario TEXT, data TEXT, openidnome TEXT, openidimagem TEXT, openidservico TEXT, openidusuario TEXT, openidurl TEXT, id_tema NUMERIC)" | |
47 | +"CREATE TABLE i3geoadmin_comentarios (comentario TEXT, data TEXT, openidnome TEXT, openidimagem TEXT, openidservico TEXT, openidusuario TEXT, openidurl TEXT, id_tema NUMERIC)", | |
48 | +"CREATE TABLE i3geoadmin_acessostema (codigo_tema TEXT, nacessos NUMERIC,dia NUMERIC, mes NUMERIC, ano NUMERIC)" | |
47 | 49 | ); |
50 | +/* | |
48 | 51 | if($conexaoadmin == "") |
49 | 52 | { |
50 | - $banco = sqlite_open("../admin.db",0666); | |
51 | - $banco = null; | |
53 | + //$banco = sqlite_open("../admin.db",0666); | |
54 | + //$banco = null; | |
52 | 55 | $dbhw = new PDO('sqlite:../admin.db'); |
53 | 56 | } |
54 | 57 | else |
55 | 58 | { |
56 | 59 | include($conexaoadmin); |
57 | 60 | } |
61 | +*/ | |
58 | 62 | foreach($tabelas as $tabela) |
59 | 63 | { |
60 | 64 | if($dbhw->getAttribute(PDO::ATTR_DRIVER_NAME) == "pgsql") |
... | ... | @@ -62,7 +66,19 @@ foreach($tabelas as $tabela) |
62 | 66 | $tabela = str_replace("INTEGER PRIMARY KEY","SERIAL PRIMARY KEY NOT NULL",$tabela); |
63 | 67 | } |
64 | 68 | $q = $dbhw->query($tabela); |
69 | + if($q) | |
70 | + { | |
71 | + $banco = null; | |
72 | + echo "<br>Feito!!!<pre>"; | |
73 | + var_dump($tabelas); | |
74 | + } | |
75 | + else | |
76 | + { | |
77 | + echo "<pre>Ocorreu algum problema. Tabelas que deveriam ter sido criadas:\n"; | |
78 | + var_dump($tabelas); | |
79 | + $e = $dbhw->errorInfo(); | |
80 | + throw new Exception($e[2]); | |
81 | + } | |
65 | 82 | } |
66 | -$banco = null; | |
67 | -echo "Feito!!!"; | |
83 | + | |
68 | 84 | ?> |
69 | 85 | \ No newline at end of file | ... | ... |
classesjs/classe_util.js
... | ... | @@ -2179,15 +2179,15 @@ i3GEO.util = { |
2179 | 2179 | for (i = 0; i < ns; i++) { |
2180 | 2180 | var src = scripts[i].getAttribute('src'); |
2181 | 2181 | if (src) { |
2182 | - var index = src.lastIndexOf("classesjs/i3geo.js"); | |
2182 | + var index = src.lastIndexOf("/classesjs/i3geo.js"); | |
2183 | 2183 | // is it found, at the end of the URL? |
2184 | - if ((index > -1) && (index + "classesjs/i3geo.js".length == src.length)) { | |
2185 | - scriptLocation = src.slice(0, -"classesjs/i3geo.js".length); | |
2184 | + if ((index > -1) && (index + "/classesjs/i3geo.js".length == src.length)) { | |
2185 | + scriptLocation = src.slice(0, -"/classesjs/i3geo.js".length); | |
2186 | 2186 | break; |
2187 | 2187 | } |
2188 | - var index = src.lastIndexOf("classesjs/i3geonaocompacto.js"); | |
2189 | - if ((index > -1) && (index + "classesjs/i3geonaocompacto.js".length == src.length)) { | |
2190 | - scriptLocation = src.slice(0, -"classesjs/i3geonaocompacto.js".length); | |
2188 | + var index = src.lastIndexOf("/classesjs/i3geonaocompacto.js"); | |
2189 | + if ((index > -1) && (index + "/classesjs/i3geonaocompacto.js".length == src.length)) { | |
2190 | + scriptLocation = src.slice(0, -"/classesjs/i3geonaocompacto.js".length); | |
2191 | 2191 | break; |
2192 | 2192 | } |
2193 | 2193 | } | ... | ... |
classesphp/classe_mapa.php
... | ... | @@ -1566,16 +1566,18 @@ $arq - Nome do arquivo. |
1566 | 1566 | { |
1567 | 1567 | $resultado = array(); |
1568 | 1568 | include("$locaplic/admin/php/conexao.php"); |
1569 | - $sql = "select nacessos from i3geoadmin_temas WHERE codigo_tema = '$codigo_tema' and not(nacessos isnull)"; | |
1569 | + $dbhw->query("INSERT INTO i3geoadmin_acessostema (codigo_tema,nacessos,dia,mes,ano) VALUES ('$codigo_tema',1,".abs(date("d")).",".abs(date("m")).",".abs(date("Y")).")"); | |
1570 | + /* | |
1571 | + $sql = "select nacessos from i3geoadmin_temas WHERE codigo_tema = '$codigo_tema' and not(nacessos isnull)"; | |
1570 | 1572 | $q = $dbh->query($sql,PDO::FETCH_ASSOC); |
1571 | 1573 | $dados = $q->fetchAll(); |
1572 | - //var_dump($dados); | |
1573 | 1574 | if(count($dados[0])>0) |
1574 | 1575 | $nacessos = $dados[0]["nacessos"] + 1; |
1575 | 1576 | else |
1576 | 1577 | $nacessos = 1; |
1577 | 1578 | $dbhw->query("UPDATE i3geoadmin_temas SET nacessos = $nacessos WHERE codigo_tema = '$codigo_tema'"); |
1578 | - $dbh = null; | |
1579 | + */ | |
1580 | + $dbh = null; | |
1579 | 1581 | $dbhw = null; |
1580 | 1582 | } |
1581 | 1583 | // |
... | ... | @@ -1616,6 +1618,5 @@ $arq - Nome do arquivo. |
1616 | 1618 | {$escreve = fwrite ($abre,$linha);} |
1617 | 1619 | $fecha = fclose ($abre); |
1618 | 1620 | } |
1619 | - | |
1620 | 1621 | } |
1621 | 1622 | ?> |
1622 | 1623 | \ No newline at end of file | ... | ... |
guia_de_migracao.txt
... | ... | @@ -26,6 +26,11 @@ Para a versão 4.5 |
26 | 26 | Os comentários são armazenados em uma tabela no banco de dados de administração. Essa tabela precisa ser criada no banco. |
27 | 27 | Para criar a tabela veja o item "Outras opções" em http://localhost/i3geo/admin |
28 | 28 | |
29 | + Contagem do número de acessos de cada tema | |
30 | + Foi criada uma nova tabela no sistema de administração para guardar o número de vezes que um tema é acessado. Antes | |
31 | + a contagem era mantida na tabela i3geoadmin_temas, cuja coluna nacessos foi depreciada. Essa nova tabela guarda também o dia do acesso. | |
32 | + Para criar a tabela veja o item "Outras opções" em http://localhost/i3geo/admin | |
33 | + | |
29 | 34 | O nome dos arquivos js e ccs compactados foram renomeados, incluindo o valor da versão no final. Isso foi feito para se |
30 | 35 | evitar problemas de cache de versões antigas. Os arquivos renomeados foram: |
31 | 36 | classesjs/i3geo_tudo_compacto45.js | ... | ... |
testainstal.php
... | ... | @@ -117,9 +117,10 @@ $tabelas = array( |
117 | 117 | "i3geoadmin_ws"=>"nacessosok,nacessos,autor_ws,desc_ws,id_ws,link_ws,nome_ws,tipo_ws", |
118 | 118 | "i3geoadmin_grupos"=>"it,es,en,desc_grupo,id_grupo,nome_grupo", |
119 | 119 | "i3geoadmin_subgrupos"=>"it,es,en,desc_subgrupo,id_subgrupo,nome_subgrupo", |
120 | - "i3geoadmin_temas"=>"it,es,en,kmz_tema,nacessos,id_tema,kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema", | |
120 | + "i3geoadmin_temas"=>"it,es,en,kmz_tema,id_tema,kml_tema,ogc_tema,download_tema,tags_tema,tipoa_tema,link_tema,desc_tema,nome_tema,codigo_tema", | |
121 | 121 | "i3geoadmin_menus"=>"it,es,en,publicado_menu,perfil_menu,aberto,desc_menu,id_menu,nome_menu", |
122 | - "i3geoadmin_comentarios"=>"comentario,data,openidnome,openidimagem,openidservico,openidusuario,openidurl,id_tema" | |
122 | + "i3geoadmin_comentarios"=>"comentario,data,openidnome,openidimagem,openidservico,openidusuario,openidurl,id_tema", | |
123 | + "i3geoadmin_acessostema"=>"codigo_tema,nacessos,dia,mes,ano" | |
123 | 124 | ); |
124 | 125 | include_once("admin/php/conexao.php"); |
125 | 126 | foreach(array_keys($tabelas) as $tabela) |
... | ... | @@ -139,14 +140,14 @@ foreach(array_keys($tabelas) as $tabela) |
139 | 140 | if(in_array($coluna,array_keys($resultado[0]))) |
140 | 141 | {echo "...ok\n";} |
141 | 142 | else |
142 | - {echo "<span style=color:red >..não encontrada</span>\n";} | |
143 | + {echo "<span style=color:red >..não encontrada. Consulte o i3geo/guia_de_migracao.txt</span>\n";} | |
143 | 144 | } |
144 | 145 | } |
145 | 146 | else |
146 | 147 | {echo "<span style=color:red >...não existem registros cadastrados</span>\n";} |
147 | 148 | } |
148 | 149 | else |
149 | - {echo "<span style=color:red >..não encontrada</span>\n";} | |
150 | + {echo "<span style=color:red >..não encontrada. Consulte o i3geo/guia_de_migracao.txt</span>\n";} | |
150 | 151 | } |
151 | 152 | echo "\n"; |
152 | 153 | echo "localizando o cgi...\n"; | ... | ... |