X-Git-Url: https://git.llucax.com/mecon/meconlib.git/blobdiff_plain/5df0c5621bbee83b19a5ed01975135203dd33c34..6633d763d3bc4797857a2b62ccad3a90f765da9f:/lib/MECON/Marco/MenuPrincipal.php diff --git a/lib/MECON/Marco/MenuPrincipal.php b/lib/MECON/Marco/MenuPrincipal.php index e7a0fd3..1aa3732 100644 --- a/lib/MECON/Marco/MenuPrincipal.php +++ b/lib/MECON/Marco/MenuPrincipal.php @@ -25,7 +25,7 @@ // #require_once 'PEAR.php'; - +require_once 'HTML/Table.php'; // +X2C includes require_once 'MECON/Marco/MenuHorizontal.php'; @@ -35,6 +35,7 @@ require_once 'MECON/Marco/MenuHorizontal.php'; /** * Clase que se encarga del manejo de los menues principales. Este menu es el de secciones general del sistema. * + * @package MECON_Marco * @access public */ class MenuPrincipal extends MenuHorizontal { @@ -55,7 +56,7 @@ class MenuPrincipal extends MenuHorizontal { * @return void * @access public */ - function menuPrincipal($configuracion)// ~X2C + function menuPrincipal($configuracion) // ~X2C { $this->_seccionSeleccionada = null; parent::Menu($configuracion); @@ -81,7 +82,7 @@ class MenuPrincipal extends MenuHorizontal { * @return void * @access public */ - function addBody($body)// ~X2C + function addBody($body) // ~X2C { $colspan = count($this->_componentes); @@ -104,49 +105,70 @@ class MenuPrincipal extends MenuHorizontal { } //Agrego el contenido de la pagina if (!is_null($this->_seccionSeleccionada) && isset($this->_seccionSeleccionada->_hijos)) { - $this->_seccionSeleccionada->_hijos->addBody($body['body'],$this->_seccionSeleccionada->_nombre, $body['espacios']); + $this->_seccionSeleccionada->_hijos->addBody($body['body'],$this->_seccionSeleccionada->_nombre, $body['espacios'], $body['menuVertical']); $row = array ($this->_seccionSeleccionada->_hijos->toHtml()); $this->_tabla->addRow($row,'align="center" bgcolor="#FFFFFF" colspan="'.$colspan.'"'); } else { $row = array (''.$this->_seccionSeleccionada->_nombre.''); $this->_tabla->addRow($row,'align="left" bgcolor="#336699" colspan="'.$colspan.'"'); - + //Agrego si corresponde el espacio al inicio if ($body['espacios']) { - $row = array (' '); - $this->_tabla->addRow($row,'align="left" bgcolor="#FFFFFF" colspan="'.$colspan.'"'); + $espacio = ' 
'; } - // - + else { + $espacio = ''; + } + // + +//SI HAY MENU ARMO UNA TABLA, SINO TIRO DIRECTAMENTE + $row = array(); + $tmp = ''; + if ($body['menuVertical']) { + if (is_object($body['menuVertical'])) { + if (method_exists($body['menuVertical'],'toHtml')) { + $tmp.=$body['menuVertical']->toHtml(); + } else { + trigger_error('El metodo no existe!', E_USER_WARNING); + } + } else { + $tmp.=$body['menuVertical']; + } + $row[] = $tmp; + } + if (is_array($body['body'])) { $tmp = ''; + $tmp = $espacio; foreach ($body['body'] as $bod) { if (is_object($bod)) { if (method_exists($bod,'toHtml')) { $tmp.=$bod->toHtml(); - } - else { + } else { trigger_error('El metodo no existe! - '.get_class($bod).'::toHtml()', E_USER_WARNING); } - } - else { + } else { $tmp.=$bod; } } - $row = array ($tmp); - } - else { - $row = array ($body['body']); + $tmp.= $espacio; + $row[] = $tmp; + } else { + $row[] = $body['body']; } - $this->_tabla->addRow($row,'align="center" bgcolor="#FFFFFF" colspan="'.$colspan.'"'); - //Agrego si corresponde el espacio al final - if ($body['espacios']) { - $row = array (' '); - $this->_tabla->addRow($row,'align="left" bgcolor="#FFFFFF" colspan="'.$colspan.'"'); + if ($body['menuVertical']) { + $tabla = new HTML_Table (array('width' => '760', 'border' => 0, 'celspacing' => 0, 'celpadding' => 0)); + $tt = $tabla->addRow($row,'align="center" bgcolor="#FFFFFF"'); + $tabla->updateCellAttributes($tt, 0, 'valign="top" width="1%"'); + $contenido[] = $tabla; + } else { + $contenido = $row; } - // +// + $this->_tabla->addRow($contenido,'align="center" bgcolor="#FFFFFF" colspan="'.$colspan.'"'); + } $row = array ($body['pie']); $this->_tabla->addRow($row,'align="center" bgcolor="#CCCCCC" colspan="'.$colspan.'"');