X-Git-Url: https://git.llucax.com/mecon/meconlib.git/blobdiff_plain/3e43dee8eaa2c6e3d6accc222dd965d4acf5f044..dee12e5810156419e529dc20c5515f8a82b1acea:/lib/MECON/Marco/MenuHorizontal.php diff --git a/lib/MECON/Marco/MenuHorizontal.php b/lib/MECON/Marco/MenuHorizontal.php index 0e6b135..7f22265 100644 --- a/lib/MECON/Marco/MenuHorizontal.php +++ b/lib/MECON/Marco/MenuHorizontal.php @@ -31,6 +31,8 @@ $Id$ require_once 'MECON/Marco/Menu.php'; // ~X2C +require_once 'MECON/HTML/Image.php'; + // +X2C Class 100 :MECON_Marco_MenuHorizontal /** * Clase que se encarga del manejo de los menues horizontales @@ -41,62 +43,71 @@ require_once 'MECON/Marco/Menu.php'; class MECON_Marco_MenuHorizontal extends MECON_Marco_Menu { // ~X2C - - // +X2C Operation 111 - /** - * Constructor. Recibe el nombre del directorio en donde esta instalado el sistema - * - * @param array $configuracion Configuracion del sistema - * - * @return void - * @access public - */ - function MECON_Marco_MenuHorizontal($configuracion = null) // ~X2C - { - parent::MECON_Marco_Menu($configuracion); - } - // -X2C - // +X2C Operation 139 /** * Funcion para agregar el cuerpo de la pagina a la pagina * * @param string $body Body para agregar a la pagina * @param string $titulo Titulo de la seccion seleccionada - * @param bool $espacios Indica si hay que agregar espacios antes y despues del body * @param mixed $menu Menu a mostrar * * @return void * @access public */ - function addBody($body, $titulo, $espacios = true, $menu = null) // ~X2C + function addBody($body, $titulo, $menu = null) // ~X2C { - $c = count($this->_componentes); - $tit = ''.$titulo.''; - $row = array ($tit); - $this->_tabla->addRow($row,'align="left" bgcolor="#336699" colspan="'.$c.'"'); - + $tmp = $this->_componentes; $this->_componentes = array (); $this->_armarArraySecciones($tmp); - $this->_tabla->addRow($this->_componentes,'align="center" bgcolor="#FFFFFF"'); - + $this->_tabla->addRow($this->_componentes,'align="center" bgcolor="#CCCCCC" valign="top"'); + $c = count($this->_componentes); $colcount = $this->_tabla->getColCount(); $width = 100 / $colcount; for ($col=0; $col < $colcount; $col++) { $this->_tabla->updateColAttributes($col,'width="'.$width.'%"'); } + + $imagen = new MECON_HTML_Image('/MECON/images/general_linea.gif'); + $i = $this->_tabla->addRow(array ($imagen->toHtml()), 'align="center" colspan="'.$c.'"'); + $this->_tabla->updateRowAttributes($i, 'height="1"'); + + //Agrego el titulo + $row = array ($this->_armarEncabezado($titulo)); + $this->_tabla->addRow($row,'align="left" bgcolor="#FFFFFF" colspan="'.$c.'"'); + $imagen = new MECON_HTML_Image('/MECON/images/general_linea2.gif', 'boder="0" align="center"'); + $this->_tabla->addRow(array ($imagen->toHtml()), 'align="center" colspan="'.$c.'"'); + // + $tmp=''; //Agrego si corresponde el espacio al inicio - if ($espacios) { + if ($this->_configuracion['espacios']) { $row = array (' '); $this->_tabla->addRow($row,'align="left" bgcolor="#FFFFFF" colspan="'.$c.'"'); } // - + //AGREGO EL MENU VERTICAL + $TABLA = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"'); + $row = array(); + $tmp = ''; + if ($menu) { + if (is_object($menu)) { + if (method_exists($menu,'toHtml')) { + $tmp.=$menu->toHtml(); + } + else { + trigger_error('El metodo no existe!', E_USER_WARNING); + } + } + else { + $tmp.=$menu; + } + $row[] = $tmp; + } + $tmp = ''; foreach ($body as $bod) { if (is_object($bod)) { if (method_exists($bod,'toHtml')) { @@ -110,10 +121,12 @@ class MECON_Marco_MenuHorizontal extends MECON_Marco_Menu { $tmp.=$bod; } } - $row = array ($tmp); - $this->_tabla->addRow($row,'align="center" bgcolor="#FFFFFF" colspan="'.$c.'"'); + $row[] = $tmp; + $TABLA->addRow($row); + $row = array ($TABLA->toHtml()); + $this->_tabla->addRow($row,'align="center" bgcolor="#FFFFFF" colspan="'.$c.'" valign="top"'); //Agrego si corresponde el espacio al final - if ($espacios) { + if ($this->_configuracion['espacios']) { $row = array (' '); $this->_tabla->addRow($row,'align="left" bgcolor="#FFFFFF" colspan="'.$c.'"'); }