Commit 91d12a1e7f8bd358db5e5f780ca9903a12ac6e2a

Authored by Edmar Moretti
1 parent 67f8bf54

Gerador de RSS com a lista de temas na raiz de um nó

Showing 2 changed files with 92 additions and 4 deletions   Show diff stats
admin/php/xml.php
... ... @@ -142,10 +142,32 @@ RSS
142 142 */
143 143 function geraRSStemas($locaplic,$id_n2)
144 144 {
145   - $sql = "select t.nome_tema as nome_ws,'' as desc_ws,'php/parsemapfile.php?id='||t.codigo_tema as link_ws,t.link_tema as autor_ws from i3geoadmin_n3 as n3,i3geoadmin_temas as t where t.id_tema = n3.id_tema and n3.id_n2 = '$id_n2' and n3.n3_perfil = '' order by nome_ws";
  145 + $sql = "select t.codigo_tema as id_ws,t.nome_tema as nome_ws,'' as desc_ws,'php/parsemapfile.php?id='||t.codigo_tema as link_ws,t.link_tema as autor_ws from i3geoadmin_n3 as n3,i3geoadmin_temas as t where t.id_tema = n3.id_tema and n3.id_n2 = '$id_n2' and n3.n3_perfil = '' order by nome_ws";
146 146 return geraXmlRSS($locaplic,$sql,"Lista de temas");
147 147 }
148 148 /*
  149 +Function: geraRSStemasRaiz
  150 +
  151 +RSS com os temas localizados na raiz de um nível
  152 +
  153 +Parametros:
  154 +
  155 +locaplic {string} - localização do i3Geo no sistema de arquivos
  156 +
  157 +id {string} - código do nó
  158 +
  159 +nivel {string} - nível do nó
  160 +
  161 +Retorno:
  162 +
  163 +RSS
  164 +*/
  165 +function geraRSStemasRaiz($locaplic,$id,$nivel)
  166 +{
  167 + $sql = "select t.codigo_tema as id_ws,t.nome_tema as nome_ws,'' as desc_ws,'php/parsemapfile.php?id='||t.codigo_tema as link_ws,t.link_tema as autor_ws from i3geoadmin_raiz as r,i3geoadmin_temas as t where t.id_tema = r.id_tema and r.nivel = '$nivel' and r.id_nivel = '$id' order by nome_ws";
  168 + return geraXmlRSS($locaplic,$sql,"Temas na raiz");
  169 +}
  170 +/*
149 171 Function: geraRSSsubgrupos
150 172  
151 173 RSS com os subgrupos cadastrados
... ... @@ -162,7 +184,7 @@ RSS
162 184 */
163 185 function geraRSSsubgrupos($locaplic,$id_n1)
164 186 {
165   - $sql = "select g.nome_subgrupo as nome_ws,'' as desc_ws,'rsstemas.php?id='||n2.id_n2 as link_ws,'' as autor_ws from i3geoadmin_n2 as n2,i3geoadmin_subgrupos as g where g.id_subgrupo = n2.id_subgrupo and n2.id_n1 = '$id_n1' and n2.n2_perfil = '' order by nome_ws";
  187 + $sql = "select n2.id_n2 as id_ws,g.nome_subgrupo as nome_ws,'' as desc_ws,'rsstemas.php?id='||n2.id_n2 as link_ws,'' as autor_ws from i3geoadmin_n2 as n2,i3geoadmin_subgrupos as g where g.id_subgrupo = n2.id_subgrupo and n2.id_n1 = '$id_n1' and n2.n2_perfil = '' order by nome_ws";
166 188 return geraXmlRSS($locaplic,$sql,"Lista de sub-grupos");
167 189 }
168 190 /*
... ... @@ -180,7 +202,7 @@ RSS
180 202 */
181 203 function geraRSSgrupos($locaplic)
182 204 {
183   - $sql = "select g.nome_grupo as nome_ws,'' as desc_ws,'rsssubgrupos.php?id='||n1.id_n1 as link_ws,'' as autor_ws ";
  205 + $sql = "select n1.id_n1 as id_ws, g.nome_grupo as nome_ws,'rsstemasraiz.php?nivel=1&id='||n1.id_n1 as desc_ws,'rsssubgrupos.php?id='||n1.id_n1 as link_ws,'' as autor_ws ";
184 206 $sql .= "from i3geoadmin_n1 as n1,i3geoadmin_grupos as g ";
185 207 $sql .= "where g.id_grupo = n1.id_grupo and n1.n1_perfil = '' group by nome_ws,desc_ws,link_ws,autor_ws order by nome_ws";
186 208 return geraXmlRSS($locaplic,$sql,"Lista de grupos");
... ... @@ -421,7 +443,7 @@ function geraXmlRSS($locaplic,$sql,$descricao)
421 443 $xml .= "<item>\n";
422 444 $xml .= "<category/>\n";
423 445 $xml .= "<title>".entity_decode($row["nome_ws"])."</title>\n";
424   - $xml .= "<description>".entity_decode($row["desc_ws"])."</description>\n";
  446 + $xml .= "<description>".xmlTexto_prepara(entity_decode($row["desc_ws"]))."</description>\n";
425 447 $xml .= "<link>http://".$_SERVER["HTTP_HOST"].dirname($_SERVER["REQUEST_URI"])."/".xmlTexto_prepara($row["link_ws"])."</link>\n";
426 448 $xml .= "<pubDate/>\n";
427 449 $xml .= "<author>".xmlTexto_prepara($row["autor_ws"])."</author>\n";
... ...
admin/rsstemasraiz.php 0 → 100644
... ... @@ -0,0 +1,66 @@
  1 +<?php
  2 +/*
  3 +Title: rsstemasraiz
  4 +
  5 +Monta um arquivo XML no padrão RSS contendo a lista de temas inseridos na raiz de um determinado nível.
  6 +
  7 +<http://localhost/i3geo/admin/rsstemasrais.php?id=1&nivel=1>
  8 +
  9 +<geraRSStemasRaiz>
  10 +
  11 +Parametros:
  12 +
  13 +id {string} - código do nó
  14 +
  15 +nivel {string} - nível do nó
  16 +
  17 +Licenca:
  18 +
  19 +GPL2
  20 +
  21 +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
  22 +
  23 +Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil
  24 +Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br
  25 +
  26 +Este programa é software livre; você pode redistribuí-lo
  27 +e/ou modificá-lo sob os termos da Licença Pública Geral
  28 +GNU conforme publicada pela Free Software Foundation;
  29 +
  30 +Este programa é distribuído na expectativa de que seja útil,
  31 +porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita
  32 +de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
  33 +Consulte a Licença Pública Geral do GNU para mais detalhes.
  34 +Você deve ter recebido uma cópia da Licença Pública Geral do
  35 +GNU junto com este programa; se não, escreva para a
  36 +Free Software Foundation, Inc., no endereço
  37 +59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
  38 +
  39 +Arquivo:
  40 +
  41 +i3geo/admin/rsstemasraiz.php
  42 +*/
  43 +error_reporting(0);
  44 +if(!isset($locaplic))
  45 +{
  46 + $locaplic = "";
  47 + if(file_exists("../../../ms_configura.php"))
  48 + {include_once("../../../ms_configura.php");}
  49 + else
  50 + {
  51 + if(file_exists("../../ms_configura.php"))
  52 + {include_once("../../ms_configura.php");}
  53 + else
  54 + {
  55 + if(file_exists("../ms_configura.php"))
  56 + {include_once("../ms_configura.php");}
  57 + else
  58 + include_once("ms_configura.php");
  59 + }
  60 + }
  61 +}
  62 +include_once($locaplic."/classesphp/pega_variaveis.php");
  63 +include_once($locaplic."/admin/php/xml.php");
  64 +echo header("Content-type: application/xml");
  65 +echo geraRSStemasRaiz($locaplic,$id,$nivel);
  66 +?>
... ...