X-Git-Url: https://git.llucax.com/mecon/meconlib.git/blobdiff_plain/cacc1525e7102dfef7964462a50e4ff13f02dcc6..511afeece45e35328bb8fe4e56ab0453554b7689:/lib/MECON/Marco/MenuHorizontal.php diff --git a/lib/MECON/Marco/MenuHorizontal.php b/lib/MECON/Marco/MenuHorizontal.php index ab6b8fc..c20d45e 100644 --- a/lib/MECON/Marco/MenuHorizontal.php +++ b/lib/MECON/Marco/MenuHorizontal.php @@ -1,110 +1,121 @@ - -// +----------------------------------------------------------------------+ -// -// $Id$ -// $Author$ -// $URL$ -// $Date$ -// $Rev$ -// + +------------------------------------------------------------------------------- +$Id$ +-----------------------------------------------------------------------------*/ -// +X2C includes -require_once 'Marco/Menu.php'; -// ~X2C +require_once 'MECON/Marco/Menu.php'; +require_once 'MECON/HTML/Image.php'; -// +X2C Class 100 :MenuHorizontal /** * Clase que se encarga del manejo de los menues horizontales * * @access public */ -class MenuHorizontal extends Menu { - // ~X2C - - - // +X2C Operation 111 - /** - * Constructor. Recibe el nombre del directorio en donde esta instalado el sistema - * - * @param string $directorio Directorio en donde se encuentra la aplicacion - * - * @return void - * @access public - */ - function MenuHorizontal($directorio = null) // ~X2C - { - parent::Menu($directorio); - } - // -X2C - - // +X2C Operation 139 +class MECON_Marco_MenuHorizontal extends MECON_Marco_Menu { /** * 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 mixed $menu Menu a mostrar * * @return void * @access public */ - function addBody($body, $titulo) // ~X2C + function addBody($body, $titulo, $menu = null) { - $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"'); - + $tmp = $this->_tabla->addRow($this->_componentes, + 'align="center" bgcolor="#CCCCCC" valign="top"'); + $colspan = count($this->_componentes); + $width = intval (100 / $colspan); + for ($col=0; $col < $colspan; $col++) { + $this->_tabla->updateCellAttributes($tmp, $col, + 'width="'.$width.'%"'); + } + + $imagen = new MECON_HTML_Image('/MECON/images/general_linea.gif', + str_repeat('=', 108)); + $tmp = $this->_tabla->addRow(array($imagen->toHtml()), + 'align="center" height="1" colspan="'. $colspan .'"'); - $colcount = $this->_tabla->getColCount(); - $width = 100 / $colcount; - for ($col=0; $col < $colcount; $col++) { - $this->_tabla->updateColAttributes($col,'width="'.$width.'%"'); - } + //Agrego el titulo + $row = array($this->_armarEncabezado($titulo . + $this->_configuracion['subtitulo'])); + $this->_tabla->addRow($row, + 'align="left" bgcolor="#FFFFFF" colspan="' + . $colspan .'"'); + $imagen = new MECON_HTML_Image('/MECON/images/general_linea2.gif', + str_repeat('.', 108), 'border="0" align="center"'); + $this->_tabla->addRow(array ($imagen->toHtml()), + 'align="center" colspan="'. $colspan .'"'); + $tmp=''; - foreach ($body as $bod) { - if (is_object($bod)) { - if (method_exists($bod,'toHtml')) { - $tmp.=$bod->toHtml(); + + $this->resultado[] = $this->_tabla; + + if ($menu) { + $MENUVERTICAL = new HTML_Table ('width="760" align="left"'); + $cuerpo = ''; + if (is_array($body)) { + if ($this->_configuracion['espacios']) { + $cuerpo.= ' 
'; } - else { - trigger_error('El metodo no existe! - '.get_class($bod).'::toHtml()', E_USER_WARNING); - } - } + foreach ($body as $bod) { + if (is_object($bod)) { + if (method_exists($bod,'toHtml')) { + $cuerpo.= $bod->toHtml(); + } + else { + trigger_error('El metodo no existe! - '. + get_class($bod).'::toHtml()', + E_USER_WARNING); + } + } + else { + $cuerpo.= $bod; + } + } + } else { - $tmp.=$bod; + $cuerpo = $body; + } + $MENUVERTICAL->addRow(array($menu, $cuerpo), + 'valign="top"'); + $MENUVERTICAL->updateColAttributes(0, 'width="10%"'); + $this->resultado[] = $MENUVERTICAL; + } + else { + //Agrego si corresponde el espacio al inicio + if ($this->_configuracion['espacios']) { + $this->resultado[] = ' 
'; } + $this->resultado = array_merge($this->resultado, $body); } - $row = array ($tmp); - $this->_tabla->addRow($row,'align="center" bgcolor="#FFFFFF" colspan="'.$c.'"'); } - // -X2C - -} // -X2C Class :MenuHorizontal - +} ?> \ No newline at end of file