From d711a496f2ce1bf30654cfeb8ca1584dc1b0a20c Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Tue, 3 Dec 2013 20:10:15 +0000 Subject: [PATCH] Inclusao de lista de temas na lista de menus --- admin/admin.db | Bin 263168 -> 0 bytes admin/php/classe_arvore.php | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++-------------------- classesphp/classe_menutemas.php | 10 +++++++++- classesphp/graficos.php | 2 +- 4 files changed, 60 insertions(+), 22 deletions(-) diff --git a/admin/admin.db b/admin/admin.db index c040ac6..73b0a19 100644 Binary files a/admin/admin.db and b/admin/admin.db differ diff --git a/admin/php/classe_arvore.php b/admin/php/classe_arvore.php index 2189414..825a0f1 100644 --- a/admin/php/classe_arvore.php +++ b/admin/php/classe_arvore.php @@ -1,6 +1,6 @@ dbhw = null; } /* - Function: validaTemas + Function: validaTemas - Remove de um array os temas que nao sao permitidos ao usuario atualmente logado + Remove de um array os temas que nao sao permitidos ao usuario atualmente logado */ function validaTemas($linhas,$id){ $res = array(); @@ -146,7 +146,7 @@ class Arvore return $res; } /* - Function: pegaListaDeMenus + Function: pegaListaDeMenus Retorna a lista de menus @@ -192,7 +192,7 @@ class Arvore return $resultado; } /* - Function: procuraTemas + Function: procuraTemas Localiza temas conforme uma palavra de busca @@ -339,7 +339,7 @@ class Arvore return $final; } /* - Function: procuraTemasEstrela + Function: procuraTemasEstrela Localiza temas que têm um determinado número (nível) de estrelas @@ -463,7 +463,7 @@ class Arvore return $final; } /* - Function: pegaGruposMenu + Function: pegaGruposMenu Retorna a lista de grupos de um menu @@ -482,7 +482,7 @@ class Arvore return array("raiz"=>$raiz,"grupos"=>$grupos); } /* - Function: pegaSubgruposGrupo + Function: pegaSubgruposGrupo Retorna a lista de subgrupos de um grupo @@ -503,8 +503,27 @@ class Arvore $raiz = $this->validaTemas($raiz,"codigo_tema"); return array("raiz"=>$raiz,"subgrupos"=>$subgrupos); } + /* + Function: pegaTemasRaizMenu + + Retorna a lista de temas da raiz de um menu + + Parametros: + + id_menu {string} + + Return: + + {array} + */ + function pegaTemasRaizMenu($id_menu) + { + $raiz = $this->execSQL($this->sql_temasraiz."where i3geoadmin_raiz.id_menu='$id_menu' and i3geoadmin_raiz.nivel = 0 order by ordem"); + $raiz = $this->validaTemas($raiz,"codigo_tema"); + return $raiz; + } /* - Function: pegaTemasRaizGrupo + Function: pegaTemasRaizGrupo Retorna a lista de temas da raiz de um grupo @@ -525,7 +544,7 @@ class Arvore return $raiz; } /* - Function: pegaTema + Function: pegaTema Retorna os dados de um tema @@ -551,7 +570,7 @@ class Arvore } } /* - Function: pegaTemaPorCodigo + Function: pegaTemaPorCodigo Retorna os dados de um tema buscando por codigo @@ -577,7 +596,7 @@ class Arvore } } /* - Function: pegaTemasSubGrupo + Function: pegaTemasSubGrupo Retorna os temas de um subgrupo @@ -595,8 +614,19 @@ class Arvore $temas = $this->validaTemas($temas,"codigo_tema"); return $temas; } + /* + Function: formataMenus + + Retorna os menus e temas na raiz de um menu, formatados no padrão da árvore + + Return: + + {array} + */ + function formataMenus(){ + } /* - Function: formataGruposMenu + Function: formataGruposMenu Retorna os grupos e temas na raiz de um menu, formatados no padrão da árvore @@ -689,7 +719,7 @@ class Arvore return($grupos); } /* - Function: formataSubgruposGrupo + Function: formataSubgruposGrupo Retorna os subgrupos e temas na raiz de um grupo, formatados no padrão da árvore @@ -751,7 +781,7 @@ class Arvore return (array("subgrupo"=>$subgrupos,"temasgrupo"=>$temasraiz)); } /* - Function: formataTemasSubgrupo + Function: formataTemasSubgrupo Retorna os temas de um subgrupo, formatados no padrão da árvore @@ -781,7 +811,7 @@ class Arvore return $temas; } /* - Function: formataTema + Function: formataTema Retorna os dados de um tema, formatados no padrão da árvore @@ -827,7 +857,7 @@ class Arvore return array("tipoa_tema"=>$recordset["tipoa_tema"],"publicado"=>$publicado,"nacessos"=>($recordset["nacessos"]),"tid"=>($recordset["codigo_tema"]),"nome"=>$this->converte($recordset["nome_tema"]),"link"=>$link,"download"=>$down,"ogc"=>$ogc,"kmz"=>$kmz); } /* - Function: execSQL + Function: execSQL Executa um SQL no banco de administração @@ -853,7 +883,7 @@ class Arvore } } /* - Verifica se uma string ocorre em um array + Verifica se uma string ocorre em um array */ function verificaOcorrencia($procurar,$em) { diff --git a/classesphp/classe_menutemas.php b/classesphp/classe_menutemas.php index e1cd242..7325cdb 100644 --- a/classesphp/classe_menutemas.php +++ b/classesphp/classe_menutemas.php @@ -113,8 +113,16 @@ array include_once($this->locaplic."/admin/php/classe_arvore.php"); $arvore = new Arvore($this->locaplic,$this->idioma); $resultado = $arvore->pegaListaDeMenus($this->perfil); + $final = array(); + //pega os temas na raiz + foreach($resultado as $r){ + $temasR = $arvore->pegaTemasRaizMenu($r["idmenu"]); + $r["temas"] = $temasR; + $final[] = $r; + } + unset($arvore); - return ($resultado); + return ($final); } /* function: pegaListaDeGrupos diff --git a/classesphp/graficos.php b/classesphp/graficos.php index 310db0b..c039330 100644 --- a/classesphp/graficos.php +++ b/classesphp/graficos.php @@ -723,7 +723,7 @@ function pegaValoresM($mapa,$layer,$itens,$exclui="nulo",$selecionados="nao",$ch $v["centroide"] = "POINT(".$c->x." ".$c->y.")"; } //pega a cor da classe onde cai o registro - if($nclasses > 0){ + if($nclasses > 0 && $versao >= 6){ $classe = $layer->getclass($layer->getClassIndex($shape)); $cor = $classe->getstyle(0)->color; $v["cores"] = $cor->red." ".$cor->green." ".$cor->blue; -- libgit2 0.21.2