From 8a246e140da7a18ee87d58ee8be3dec1bcfa4116 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Tue, 7 Jul 2009 15:03:55 +0000 Subject: [PATCH] --- classesphp/classe_menutemas.php | 89 ++++++++++++++++++++++++++++++++++++++++++++--------------------------------------------- classesphp/funcoes_gerais.php | 4 ++-- classesphp/mapa_controle.php | 2 +- 3 files changed, 47 insertions(+), 48 deletions(-) diff --git a/classesphp/classe_menutemas.php b/classesphp/classe_menutemas.php index 11c8ee8..cfacabf 100644 --- a/classesphp/classe_menutemas.php +++ b/classesphp/classe_menutemas.php @@ -2,7 +2,10 @@ /* Title: classe_menutemas.php -Manipulação dos temas do arquivo menutemas.xml. +Manipulação dos temas do arquivo menutemas.xml ou sistema de administração + +Quando o i3Geo está configurado para acessar o sistema de administração, os métodos desta classe +passam a utilizar a classe i3geo/admin/php/classe_arvore.php Lista temas, grupos,etc. @@ -28,7 +31,6 @@ Free Software Foundation, Inc., no endereço File: i3geo/classesphp/classe_menutemas.php -19/6/2007 */ /* Class: Menutemas @@ -112,34 +114,10 @@ array { if(!isset($this->locaplic)) {return "locaplic nao foi definido";} - $locaplic = $this->locaplic; - include($this->locaplic."/admin/php/conexao.php"); - if($this->editor) - $sql = 'SELECT * from i3geoadmin_menus order by nome_menu'; - else - $sql = "SELECT * from i3geoadmin_menus where publicado_menu != 'NAO' or publicado_menu isnull order by nome_menu"; - $q = $dbh->query($sql,PDO::FETCH_ASSOC); - $regs = $q->fetchAll(); - $dbh = null; - $resultado = array(); - foreach($regs as $reg) - { - $perfis = str_replace(","," ",$reg["perfil_menu"]); - $perfis = explode(" ",$perfis); - if (($this->array_in_array($this->perfil,$perfis)) || ($reg["perfil_menu"] == "")) - { - if(!in_array("publicado_menu",array_keys($reg))) - {$reg["publicado_menu"] = "sim";} - if(strtolower($reg["publicado_menu"]) != "nao" || $this->editor) - { - $status = "fechado"; - if(strtolower($reg["aberto"]) == "sim") - $status = "aberto"; - $url = $this->urli3geo."/admin/xmlmenutemas.php?id_menu=".$reg["id_menu"]; - $resultado[] = array("desc"=>$reg["desc_menu"],"publicado"=>$reg["publicado_menu"],"nomemenu"=>$reg["nome_menu"],"idmenu"=>$reg["id_menu"],"arquivo"=>"","status"=>$status,"url"=>$url); - } - } - } + include_once("../admin/php/classe_arvore.php"); + $arvore = new Arvore($this->locaplic); + $resultado = $arvore->pegaListaDeMenus($this->perfil); + unset($arvore); } else {$resultado = $this->menutemas;} @@ -193,15 +171,19 @@ array if(!isset($menu["url"])){$menu["url"] = "";} //para efeitos de compatibilidade entre versões do i3geo $ondexml = $menu["arquivo"]; if(!isset($menu["publicado"])){$ondexml = $menu["url"];} - if($ondexml != "") + if($ondexml != "" && $this->menutemas != "") { $xml = simplexml_load_file($ondexml); $grupos = $this->retornaGrupos($xml,$listasistemas,$idmenu,$listasgrupos); } else //pega o xml do sistema de administração { - $xml = simplexml_load_string(geraXmlMenutemas(implode(" ",$this->perfil),$idmenu,$tipo,$this->locaplic)); - $grupos = $this->retornaGrupos($xml,$listasistemas,$idmenu,$listasgrupos); + //$xml = simplexml_load_string(geraXmlMenutemas(implode(" ",$this->perfil),$idmenu,$tipo,$this->locaplic)); + //$grupos = $this->retornaGrupos($xml,$listasistemas,$idmenu,$listasgrupos); + include_once("../admin/php/classe_arvore.php"); + $arvore = new Arvore($this->locaplic); + $grupos = $arvore->formataGruposMenu($idmenu,$this->perfil,$listasgrupos); + unset($arvore); } } } @@ -362,12 +344,17 @@ array if(!isset($menu["url"])){$menu["url"] = "";} //para efeitos de compatibilidade entre versões do i3geo $ondexml = $menu["arquivo"]; if($menu["url"] != ""){$ondexml = $menu["url"];} - if($ondexml != "") + if($ondexml != "" && $this->menutemas != "") {$this->xml = simplexml_load_file($ondexml);} else //pega o xml do sistema de administração { - $this->xml = simplexml_load_string(geraXmlMenutemas(implode(" ",$this->perfil),$idmenu,$tipo,$this->locaplic)); + //$this->xml = simplexml_load_string(geraXmlMenutemas(implode(" ",$this->perfil),$idmenu,$tipo,$this->locaplic)); //echo geraXmlMenutemas(implode(" ",$this->perfil),$idmenu,$tipo,$this->locaplic);exit; + include_once("../admin/php/classe_arvore.php"); + $arvore = new Arvore($this->locaplic); + $subGrupos = $arvore->formataSubgruposGrupo($idmenu,$codgrupo,$this->perfil); + unset($arvore); + return($subGrupos); } } } @@ -470,11 +457,16 @@ array if(!isset($menu["url"])){$menu["url"] = "";} //para efeitos de compatibilidade entre versões do i3geo $ondexml = $menu["arquivo"]; if($menu["url"] != ""){$ondexml = $menu["url"];} - if($ondexml != "") + if($ondexml != "" && $this->menutemas != "") {$this->xml = simplexml_load_file($ondexml);} else //pega o xml do sistema de administração { - $this->xml = simplexml_load_string(geraXmlMenutemas(implode(" ",$this->perfil),$idmenu,$tipo,$this->locaplic)); + //$this->xml = simplexml_load_string(geraXmlMenutemas(implode(" ",$this->perfil),$idmenu,$tipo,$this->locaplic)); + include_once("../admin/php/classe_arvore.php"); + $arvore = new Arvore($this->locaplic); + $temas = $arvore->formataTemasSubgrupo($subgrupo,$this->perfil); + unset($arvore); + return($temas); } } } @@ -663,18 +655,25 @@ $procurar - String que será procurada. include_once($this->locaplic."/admin/php/xml.php"); $tipo = ""; $this->xml = ""; - foreach($this->pegaListaDeMenus() as $menu) + if($this->menutemas != "") { - if(!isset($menu["url"])){$menu["url"] = "";} //para efeitos de compatibilidade entre versões do i3geo - $ondexml = $menu["arquivo"]; - if($menu["url"] != ""){$ondexml = $menu["url"];} - if($ondexml != "") - {$this->xml[] = simplexml_load_file($ondexml);} - else //pega o xml do sistema de administração + foreach($this->pegaListaDeMenus() as $menu) { - $this->xml[] = simplexml_load_string(geraXmlMenutemas(implode(" ",$this->perfil),$menu["idmenu"],$tipo,$this->locaplic)); + if(!isset($menu["url"])){$menu["url"] = "";} //para efeitos de compatibilidade entre versões do i3geo + $ondexml = $menu["arquivo"]; + if($menu["url"] != ""){$ondexml = $menu["url"];} + $this->xml[] = simplexml_load_file($ondexml); } } + else + { + //$this->xml[] = simplexml_load_string(geraXmlMenutemas(implode(" ",$this->perfil),$menu["idmenu"],$tipo,$this->locaplic)); + include_once("../admin/php/classe_arvore.php"); + $arvore = new Arvore($this->locaplic); + $temas = $arvore->procuraTemas($procurar,$this->perfil); + unset($arvore); + return($temas); + } $resultado = array(); $texto = array(); foreach ($this->xml as $xml) diff --git a/classesphp/funcoes_gerais.php b/classesphp/funcoes_gerais.php index ca044dd..c142391 100644 --- a/classesphp/funcoes_gerais.php +++ b/classesphp/funcoes_gerais.php @@ -1251,11 +1251,11 @@ function buscaRapida($servico,$palavra) include_once('../pacotes/SOAP/nusoap.php'); //include_once("../pacotes/SOAP/easy_parser.inc"); $soapclient = new Xsoapclient($servico."?wsdl","wsdl"); + $vv = "erro"; if (@$p = $soapclient->getproxy()) { - //$vv = $p->procurar(array("palavra"=>$palavra,"tipoBusca"=>"qualquer")); $vv = $soapclient->call("procurar",array("palavra"=>$palavra,"tipoBusca"=>"qualquer")); - //print_r($vv); + if($vv == ""){$vv = "erro";} return ($vv); } else diff --git a/classesphp/mapa_controle.php b/classesphp/mapa_controle.php index c435e33..2c42daa 100644 --- a/classesphp/mapa_controle.php +++ b/classesphp/mapa_controle.php @@ -167,7 +167,7 @@ include_once("funcoes_gerais.php"); //identifica qual a url do i3geo // $protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']); -$protocolo = strtolower($protocolo[0]) . '://'.$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; +$protocolo = strtolower($protocolo[0]) . '://'.$_SERVER['HTTP_HOST'];//$_SERVER['SERVER_NAME'] .":". $_SERVER['SERVER_PORT']; $urli3geo = str_replace("/classesphp/mapa_controle.php","",$protocolo.$_SERVER["PHP_SELF"]); // //substitui a string de conexão -- libgit2 0.21.2