// +----------------------------------------------------------------------+
//
// $Id$
// $Author$
// $URL$
// $Date$
// $Rev$
//
#require_once 'PEAR.php';
// +X2C includes
require_once 'MECON/Marco/Menu.php';
// ~X2C
// +X2C Class 103 :MenuVertical
/**
* Clase que se encarga del manejo de los menues verticales
*
* @package MECON_Marco
* @access public
*/
class MenuVertical extends Menu {
// ~X2C
// +X2C Operation 110
/**
* Constructor. Recibe el nombre del directorio en donde esta instalado el sistema
*
* @param array $configuracion Configuracion del sistema
*
* @return void
* @access public
*/
function MenuVertical($configuracion = null) // ~X2C
{
parent::Menu($configuracion);
}
// -X2C
// +X2C Operation 141
/**
* Funcion para agregar el cuerpo de la pagina a la pagina
*
* @param string $body Cuerpo del mensaje 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
{
$c= count($this->_componentes);
$tmp = $this->_componentes;
$this->_componentes = array ();
$this->_armarArraySecciones($tmp);
$TABLA = new HTML_Table('width=160 align="left" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0" height="1"');
$menu =' '.$titulo.'';
$row = array ($menu);
$TABLA->addRow($row,'align="left" bgcolor="#FFFFFF" height="1"');
$TABLA->updateCellAttributes(0,0,'colspan="2"');
foreach ($this->_componentesVertical as $comp) {
$row = array ('',' ');
$TABLA->addRow($row);
$TABLA->addRow($comp,'align="left" bgcolor="#FFFFFF" height="1"');
$TABLA->updateColAttributes(0,'align="right" width="34"');
$TABLA->updateColAttributes(1,'align="left"');
}
$TABLA->updateCellAttributes(0,0,'align="left"');
$row = array ($TABLA->toHtml());
$this->_tabla->addRow($row,'width=160 align="left" bgcolor="#FFFFFF" valign="top"');
//AGREGO EL CUERPO
$tmp = '';
//Agrego si corresponde el espacio al inicio
if ($espacios) {
$tmp.='
';
}
//
foreach ($body as $bod) {
if (is_object($bod)) {
if (method_exists($bod,'toHtml')) {
$tmp.=$bod->toHtml();
}
else {
trigger_error('El metodo no existe! - '.get_class($bod).'::toHtml()', E_USER_WARNING);
}
}
else {
$tmp.=$bod;
}
}
//Agrego si corresponde el espacio al final
if ($espacios) {
$tmp.='
';
}
//
$row = array ($tmp);
$this->_tabla->setCellContents (0,1,$row);
$this->_tabla->setCellAttributes(0,1,'align="center" bgcolor="#FFFFFF" valign="top"');
$this->_tabla->updateColAttributes (1,'width="600"');
//
}
// -X2C
} // -X2C Class :MenuVertical
?>