From: Martín Marrese Date: Fri, 9 May 2003 14:28:37 +0000 (+0000) Subject: - Redefini conceptos, arregle errores (tanto de concepto como de programacion) X-Git-Tag: svn_import~524 X-Git-Url: https://git.llucax.com/mecon/meconlib.git/commitdiff_plain/41e77d4af0b32ab496bc7d71d7688381f479a90b?ds=sidebyside - Redefini conceptos, arregle errores (tanto de concepto como de programacion) Faltan los metodos toHtml de los menues --- diff --git a/marco/doc/uml/Marco.xmi b/marco/doc/uml/Marco.xmi index 66db300..55830c5 100644 --- a/marco/doc/uml/Marco.xmi +++ b/marco/doc/uml/Marco.xmi @@ -9,7 +9,7 @@ - + @@ -20,13 +20,11 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m - - - + @@ -41,7 +39,7 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m - + @@ -92,10 +90,7 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m - - - @@ -105,12 +100,13 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m - + + + + - - - - + + @@ -132,15 +128,11 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m - - - - @@ -171,112 +163,131 @@ Devuelve 1 si pertenece a la seccion, en caso contrario 0." name="verifSeccionSe - - - + + + + + - - - + + + + + + + + + + + + + - + - - - - - - - - - + + + + + + + + + + - + - + - + - - + + - + - - + + - - + + - - + + - - + + + + + + + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + @@ -285,8 +296,7 @@ x2c:include: HTML/Page.php" name="HTML_Page" static="0" scope="200" /> - - + @@ -300,6 +310,7 @@ x2c:include: HTML/Page.php" name="HTML_Page" static="0" scope="200" /> + @@ -332,32 +343,35 @@ x2c:include: HTML/Page.php" name="HTML_Page" static="0" scope="200" /> - - + - + - - - - - - + + + - + + + + + + + + - + @@ -377,17 +391,13 @@ x2c:include: HTML/Page.php" name="HTML_Page" static="0" scope="200" /> - - - - @@ -398,10 +408,6 @@ x2c:include: HTML/Page.php" name="HTML_Page" static="0" scope="200" /> - - - - diff --git a/marco/php/marco/Copete.php b/marco/php/marco/Copete.php index fab27bd..c4f5690 100644 --- a/marco/php/marco/Copete.php +++ b/marco/php/marco/Copete.php @@ -73,11 +73,10 @@ class Copete { */ function toHtml() // ~X2C { - $TABLA = new Tabla('width="760" align="center" bgcolor="#FFFFFF" cellspacing="0"'); + $TABLA = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"'); $row = array (''); - $TABLA->agregarFila($row); - $TABLA->align(0,0,"center"); - return $TABLA->toHtml(1); + $TABLA->addRow($row,'align="center" bgcolor="#FFFFFF"'); + return $TABLA; } // -X2C diff --git a/marco/php/marco/Marco.php b/marco/php/marco/Marco.php index 2687c7b..74d226f 100644 --- a/marco/php/marco/Marco.php +++ b/marco/php/marco/Marco.php @@ -34,11 +34,12 @@ require_once 'include/lib/marco/Menu.php'; require_once 'include/lib/HTML/Page.php'; require_once 'include/lib/HTML/Table.php'; -define ('SISTEMA_DIR_BASE', '/www/sistemas'); -define ('SCRIPT_DIR_BASE' , '/www/js/'); -define ('ESTILO_DIR_BASE' , '/www/css/'); -define ('SCRIPT_GENERICO' , 'script.js'); -define ('ESTILO_GENERICO' , 'estilos.css'); +define ('SISTEMA_DIR_BASE' , '/www/sistemas'); +define ('SISTEMA_CONF_BASE', 'configuracion.php'); +define ('SCRIPT_DIR_BASE' , '/www/js/'); +define ('ESTILO_DIR_BASE' , '/www/css/'); +define ('SCRIPT_GENERICO' , 'script.js'); +define ('ESTILO_GENERICO' , 'estilos.css'); // +X2C Class 3 :Marco @@ -113,9 +114,9 @@ class Marco extends HTML_Page { var $_pie; /** - * Html de lo que se quiere incluir + * Html u objetos que se quieren incluir a la pagina * - * @var string $contenido + * @var array $contenido * * @access private */ @@ -135,8 +136,6 @@ class Marco extends HTML_Page { */ function Marco($directorio) // ~X2C { - // var_dump(get_included_files()); - parent::HTML_Page(array ('doctype'=>'HTML 4.01 Transitional', 'charset' => 'iso-8859-1', 'lineend' => 'unix', @@ -146,62 +145,17 @@ class Marco extends HTML_Page { $this->_directorio = $directorio; $this->_obtenerConfiguracion(); - $this->_titulo = new Titulo ($this->_configuracion); - $this->_copete = new Copete ($this->_directorio); - $this->_menu = new Menu ($this->_directorio,null); - $this->_pie = new Pie ($this->_configuracion); + $this->_titulo = new Titulo ($this->_configuracion); + $this->_copete = new Copete ($this->_directorio); + $this->_menu = new MenuHorizontal ($this->_directorio,null); + $this->_pie = new Pie ($this->_configuracion); $this->_contenido = array (); - } - // -X2C - // +X2C Operation 27 - /** - * Funcion que devuelve un string en html para ser agregado en el prepend.php del sistema. - * - * @return string - * - * @access public - */ - function toHtmlPrepend() // ~X2C - { -/* $row = array ('colspan' => $this->_configuracion['menu'] + 1); - Hook::hash('marco-html01'); - print $this->_titulo->toHtml(); //Agrego el titulo del sistema segun su archivo de configuracion - Hook::hash('marco-html02'); - Hook::hash('marco-html03',$row); - print $this->_copete->toHtml(); //Agrego el copete del sistema - Hook::hash('marco-html04'); - Hook::hash('marco-html03',$row); - print $this->_menu->toHtmlSecciones(); //Agrego las secciones del sistema - //Agrego el titulo de la seccion de ser necesario - Hook::hash('marco-html04'); - Hook::hash('marco-html03',$row); - //ACA TENGO QUE VER COMO METO LOS MENUES VERTICALES - //ACA QUEDA LISTO PARA QUE SE AGREGUEN EN EL MEDIO LAS PAGINAS DEL SISTEMA -*/ + $this->_titulo2 = ''; } // -X2C - // +X2C Operation 29 - /** - * Funcion que devuelve un string html para ser agregado al append.php del sistema. - * - * @return string - * - * @access public - */ - function toHtmlAppend() // ~X2C - { -/* $row = array ('colspan' => $this->_configuracion['menu'] + 1); - Hook::hash('marco-html04'); - Hook::hash('marco-html03',$row); - print $this->_pie->toHtml(); //Agrego el pie de pagina al sistema - print "\n"; - Hook::hash('marco-html04'); - Hook::hash('marco-html05'); -*/ - } - // -X2C + // +X2C Operation 30 /** @@ -247,7 +201,7 @@ class Marco extends HTML_Page { */ function _obtenerConfiguracion() // ~X2C { - $this->_configuracion = include 'www/sistemas/'.$this->_directorio.'/conf/configuracion.php'; + $this->_configuracion = include SISTEMA_CONF_BASE; } // -X2C @@ -267,12 +221,12 @@ class Marco extends HTML_Page { $this->_body_display(); // MUESTRO EN PANTALLA LA PAGINA parent::display(); - // SI ESTOY FUNCIONA SOY FELIZ....->MARTIN MARRESE } // -X2C // +X2C Operation 97 /** + * Redefinicion de la funcion que permite agregar o adosar elementos o string al body de la pagina * * @param Mixed $body Mixed. Recibe el contenido a agregar como body de la pagina * @@ -298,7 +252,6 @@ class Marco extends HTML_Page { { $tmp = $this->_titulo->darTitulo().$this->_titulo2; $this->setTitle($tmp); - $this->addMetaData("author", 'Martin Marrese '); $this->addScript(SCRIPT_DIR_BASE.SCRIPT_GENERICO); $this->addStyleSheet(ESTILO_DIR_BASE.ESTILO_GENERICO); } @@ -314,66 +267,19 @@ class Marco extends HTML_Page { */ function _body_display() // ~X2C { - $TABLA_GRANDE = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"'); + $TABLA = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"'); - //Agrego el body - $row = array ($this->_copete->darCopete()); - $TABLA_GRANDE->addRow($row,"align=\"center\" bgcolor=\"#FFFFFF\""); - //Agrego las secciones - $row = array ($this->_menu->toHtmlSecciones()); - $TABLA_GRANDE->addRow($row,"align=\"center\" bgcolor=\"#CCCCCC\""); - - /// {{{ Lo tabulo yo para entenderlo -> GRACIAS VUELVA PRONTO -> mmarre - $TABLA_INTERNA = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"'); - //Armo el body completo (con menu o titulo) - $contenido = ''; - foreach ($this->_contenido as $cont) { - if (is_object($cont)) { - if (method_exists($cont,'toHtml')) { - $contenido.= $cont->toHtml(); - } - else { - trigger_error('Error, method not found!', E_USER_WARNING); - } - } - else { - $contenido.= $cont; - } - } - - //Obtengo el menu de la seccion seleccionada - if (isset($_SESSION['tipoMenu'])){ - $row = array ($_SESSION['menuHtml']); - if (($_SESSION['tipoMenu'] == 'vertical')) { - $ri = $TABLA_INTERNA->addRow($row,"align=\"left\" bgcolor=\"#FFFFFF\" valign=\"top\""); - $row = array ($contenido); - $TABLA_INTERNA->setCellContents($ri,1,$row); - $TABLA_INTERNA->setCellAttributes($ri,1,"align=\"center\" bgcolor=\"#FFFFFF\""); - } - else { - $TABLA_INTERNA->addRow($row,"align=\"center\" bgcolor=\"#FFFFFF\""); - $row = array ($contenido); - $TABLA_INTERNA->addRow($row,"align=\"center\" bgcolor=\"#FFFFFF\""); - } - } - else { - $row = array ($contenido); - $TABLA_INTERNA->addRow($row,"align=\"center\" bgcolor=\"#FFFFFF\""); - } - /// }}} + $row = array ($this->_copete->toHtml()); + $TABLA->addRow($row,'align="center" bgcolor="#FFFFFF"'); - //Agrego el body completo (con menu o titulo) a la tabla externa. - $row = array ($TABLA_INTERNA); - $TABLA_GRANDE->addRow($row,"align=\"center\" bgcolor=\"#FFFFFF\""); - //Agrego el pie de pagina - $row = array ($this->_pie->darPie()); - $TABLA_GRANDE->addRow($row,"align=\"center\" bgcolor=\"#CCCCCC\""); + $this->_menu->addBody($this->_contenido); //Le paso el contenido al menu para que lo agregue en el lugar correspondiente - $this->addBodyContent($TABLA_GRANDE->toHtml()); + $row = array ($this->_menu->toHtml()); + $TABLA->addRow($row,'align="center" bgcolor="#FFFFFF"'); + $row = array ($this->_pie->toHtml()); + $TABLA->addRow($row,'align="center" bgcolor="#CCCCCC"'); - //TODO: tengo que ver como salvarme de usar $_SESSION['menuHtml'] - unset($_SESSION['tipoMenu']); - unset($_SESSION['menuHtml']); + $this->addBodyContent($TABLA->toHtml()); } // -X2C diff --git a/marco/php/marco/Menu.php b/marco/php/marco/Menu.php index 76c5ad7..3e2ebea 100644 --- a/marco/php/marco/Menu.php +++ b/marco/php/marco/Menu.php @@ -25,12 +25,14 @@ // require_once 'Seccion.php'; +require_once 'ImagenAnimada.php'; require_once 'include/lib/HTML/Table.php'; -define ('PRE_DIR' ,'/var/www/intranet/www/sistemas/'); -define ('POST_DIR','/conf/'); -define ('MENU_SERIALIZADO','MenuSerializado'); -define ('ARRAYSECCIONES_SERIALIZADO','ArraySeccionesSerializado'); +define ('PRE_DIR' , '/var/www/intranet/www/sistemas/'); +define ('POST_DIR' , '/conf/'); +define ('SISTEMA_CONF_SECCIONES' , 'confSecciones.php'); +define ('MENU_SERIALIZADO' , 'MenuSerializado'); +define ('ARRAYSECCIONES_SERIALIZADO', 'ArraySeccionesSerializado'); // +X2C Class 14 :Menu /** @@ -39,15 +41,6 @@ define ('ARRAYSECCIONES_SERIALIZADO','ArraySeccionesSerializado'); * @access public */ class Menu { - /** - * Array de secciones. Contiene la informacion de las secciones del sistema. - * - * @var array(seccion) $secciones - * - * @access private - */ - var $_secciones; - /** * Nombre del directorio en donde se encuentra el sistema;. * @@ -58,40 +51,22 @@ class Menu { var $_directorio; /** - * Nombre del menu - * - * @var string $nombre - * - * @access private - */ - var $_nombre; - - /** - * Link del menu. - * - * @var string $link - * - * @access private - */ - var $_link; - - /** - * Valor del colspan necesario para poder armar la pagina + * Array de array con los componentes del menu * - * @var int $colspan + * @var array $componentes * * @access private */ - var $_colspan; + var $_componentes; /** - * Nombre de la imagen del menu + * Variable que contiene la tabla general de menues que se va a mostrar en pantalla * - * @var string $imagen + * @var table $tabla * * @access private */ - var $_imagen; + var $_tabla; // ~X2C @@ -100,14 +75,14 @@ class Menu { * Constructor. Recibe como parametro el directorio en donde se encuentra el sistema. * * @param string $directorio Nombre del directorio en donde se encuentra el sistema. - * @param array $menu Array con los datos del menu * * @return void * * @access public */ - function Menu($directorio = null, $menu) // ~X2C + function Menu($directorio = null) // ~X2C { + $this->_componentes = array (); //Inicializo vacio el array de componentes del menu if (!is_null($directorio)) { // if (file_exists(PRE_DIR.$directorio.POST_DIR.MENU_SERIALIZADO)) { //ESTA SERIALIZADO EL OBJETO @@ -117,17 +92,15 @@ class Menu { //NO ESTA SERIALIZADO EL OBJETO $this->_directorio = $directorio; $this->_armarArraySecciones($this->_obtenerConfSecciones()); + + $this->_tabla = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"'); + //Serializo el array asociativo de paginas-secciones - if (!file_exists(PRE_DIR.$directorio.POST_DIR.ARRAYSECCIONES_SERIALIZADO)) { +// if (!file_exists(PRE_DIR.$directorio.POST_DIR.ARRAYSECCIONES_SERIALIZADO)) { $this->_serializarArraySecciones(); - } +// } // $this->_generarArchivo(); NO ESTOY USANDO LA SERIALIZACION GRANDE AHORA } - if (!is_null($menu)) { - $this->_nombre = $menu['nombre']; - $this->_link = $menu['link']; - $this->_imagen = $menu['imagenComun']; - } } // -X2C @@ -165,19 +138,6 @@ class Menu { } // -X2C - // +X2C Operation 59 - /** - * Funcion que devuelve un string en html con lo que hay que imprimir en pantalla. - * - * @return string - * - * @access public - */ - function toHtml() // ~X2C - { - trigger_error('Not implemented!', E_USER_WARNING); - } - // -X2C // +X2C Operation 76 /** @@ -189,7 +149,7 @@ class Menu { */ function _obtenerConfSecciones() // ~X2C { - $archivo = include 'confSecciones.php'; + $archivo = include SISTEMA_CONF_SECCIONES; return $archivo; } // -X2C @@ -206,35 +166,14 @@ class Menu { */ function _armarArraySecciones($confSec) // ~X2C { - $this->_secciones = array (); + $linksel = $_SERVER['PHP_SELF']; foreach ($confSec as $sec) { - $tmp = new Seccion ($sec, $this->_directorio); - array_push($this->_secciones,$tmp); + $tmp = new Seccion ($sec, $this->_directorio); + array_push($this->_componentes,$tmp->toHtml($linksel)); } } // -X2C - // +X2C Operation 87 - /** - * Funcion que devuelve un string en html de las secciones con lo que hay que imprimir en pantalla. - * - * @return string - * - * @access public - */ - function toHtmlSecciones() // ~X2C - { - $link_tmp = basename($_SERVER['PHP_SELF']); - - $row = array(); - foreach ($this->_secciones as $sec) { - array_push($row,$sec->toHtml($link_tmp)); - } - $TABLA = new HTML_Table('width="760" align="center" bgcolor="#CCCCCC" cellspacing="0"'); - $TABLA->addRow($row,'align="center" bgcolor="#CCCCCC"'); - return $TABLA; - } - // -X2C // +X2C Operation 126 /** @@ -246,14 +185,21 @@ class Menu { */ function _serializarArraySecciones() // ~X2C { + $secciones = include SISTEMA_CONF_SECCIONES; $tmp = array(); - foreach ($this->_secciones as $sec) { - $tmp[$sec->link()] = $sec->_darTitulo(); - foreach ($sec->_hijos as $hijo) { - $tmp[$hijo->_link] = $sec->_darTitulo(); - } - } - + foreach ($secciones as $sec) { + $tmp[$sec['link']] = $sec['nombre']; + if (array_key_exists('hijos',$sec)) { + foreach ($sec['hijos'] as $hijo) { + $tmp[$hijo['link']] = $sec['nombre']; + if (array_key_exists('hijos',$hijo)) { + foreach ($hijo['hijos'] as $nieto) { + $tmp[$nieto] = $hijo['link']; + } + } + } + } + } $s = serialize($tmp); $fp = fopen(PRE_DIR.$this->_directorio.POST_DIR.ARRAYSECCIONES_SERIALIZADO,'w'); fputs($fp, $s); @@ -262,6 +208,39 @@ class Menu { // -X2C + // +X2C Operation 134 + /** + * Funcion que se encarga de agregar componentes al array + * + * @param array $componente Datos del componente de menu a agregar + * + * @return void + * + * @access public + */ + function agregarComponente($componente) // ~X2C + { + array_push($this->_componentes,$componente); + } + // -X2C + + + // +X2C Operation 143 + /** + * Funcion que se encarga de devolver lo que se debe mostrar en pantalla + * + * @return string + * + * @access public + */ + function toHtml() // ~X2C + { + $tmp = $this->_tabla->toHtml(); + return $tmp; + } + // -X2C + + } // -X2C Class :Menu ?> diff --git a/marco/php/marco/MenuHorizontal.php b/marco/php/marco/MenuHorizontal.php index 3350b0f..d1a5d1b 100644 --- a/marco/php/marco/MenuHorizontal.php +++ b/marco/php/marco/MenuHorizontal.php @@ -40,36 +40,58 @@ require_once 'Menu.php'; class MenuHorizontal extends Menu { // ~X2C - // +X2C Operation 106 + + // +X2C Operation 111 /** - * Funcion que se encarga de devolver el html de lo que hay que mostrar por pantalla + * Constructor. Recibe el nombre del directorio en donde esta instalado el sistema * - * @return string + * @param string $directorio Directorio en donde se encuentra la aplicacion + * + * @return void * * @access public */ - function toHtml() // ~X2C + function MenuHorizontal($directorio) // ~X2C { - return "_link."\" onMouseOut=\"MM_swapImgRestore()\" onMouseOver=\"MM_displayStatusMsg('".$this->_nombre."'); MM_swapImage('".$this->_nombre."','','images/".$this->_imagen->_imgMouseOn."',1); return document.MM_returnValue\" MM_swapImage('".$this->_nombre."','','images/".$this->_imagen->_imgMouseOn."',1)>_nombre."\" src=\"images/".$this->_imagen->_imgComun."\" border=\"0\" alt=\"".$this->_imagen->_alt."\">"; + parent::Menu($directorio); } // -X2C - // +X2C Operation 111 + // +X2C Operation 139 /** - * Constructor. Recibe el nombre del menu, el link y el nombre de la imagen. + * Funcion para agregar el cuerpo de la pagina a la pagina * - * @param string $menu Array con los datos del menu + * @param string $body Body para agregar a la pagina * * @return void * * @access public */ - function MenuHorizontal($menu) // ~X2C + function addBody($body) // ~X2C { - parent::Menu(null,null); - $this->_nombre = $menu['nombre']; - $this->_link = $menu['link']; - $this->_imagen = new ImagenAnimada($menu['imagenComun']); + $tmp = array (); + foreach ($this->_componentes as $comp) { + array_push($tmp,$comp); + } + $c = count($tmp); + $this->_tabla->addRow($tmp,'align="center" bgcolor="#CCCCCC"'); + + $tmp=''; + foreach ($body as $bod) { + if (is_object($bod)) { + if (method_exists($bod,'toHtml')) { + $tmp.=$bod->toHtml(); + } + else { + trigger_error('El metodo no existe!', E_USER_WARNING); + } + } + else { + $tmp.=$bod; + } + } + $row = array ($tmp); + $this->_tabla->addRow($row,'align="center" bgcolor="#FFFFFF" colspan="'.$c.'"'); } // -X2C diff --git a/marco/php/marco/MenuOculto.php b/marco/php/marco/MenuOculto.php new file mode 100644 index 0000000..0425d52 --- /dev/null +++ b/marco/php/marco/MenuOculto.php @@ -0,0 +1,78 @@ + +// +----------------------------------------------------------------------+ +// +// $Id$ +// $Author$ +// $URL$ +// $Date$ +// $Rev$ +// + +#require_once 'PEAR.php'; + + +// +X2C includes +require_once 'Menu.php'; +// ~X2C + +// +X2C Class 136 :MenuOculto +/** + * + * @access public + */ +class MenuOculto extends Menu { + // ~X2C + + + // +X2C Operation 138 + /** + * Constructor. Recibe el nombre del directorio en donde esta instalado el sistema + * + * @param string $directorio Directorio en donde se encuentra el sistema + * + * @return void + * + * @access public + */ + function MenuOculto($directorio) // ~X2C + { + parent::Menu($directorio); + } + // -X2C + + // +X2C Operation 140 + /** + * Funcion para agregar el cuerpo de la pagina a la pagina + * + * @param string $body String con el cuerpo a agregar a la pagina + * + * @return void + * + * @access public + */ + function addBody($body) // ~X2C + { + $row = array ($body); + $this->_tabla->addRow($body,'align="center" bgcolor="#FFFFFF"'); + } + // -X2C + +} // -X2C Class :MenuOculto + +?> \ No newline at end of file diff --git a/marco/php/marco/MenuVertical.php b/marco/php/marco/MenuVertical.php index 928889f..aa30c67 100644 --- a/marco/php/marco/MenuVertical.php +++ b/marco/php/marco/MenuVertical.php @@ -39,36 +39,38 @@ require_once 'Menu.php'; class MenuVertical extends Menu { // ~X2C - // +X2C Operation 107 + + // +X2C Operation 110 /** - * Funcion que se encarga de devolver el html que hay que mostrar en pantalla. + * Constructor. Recibe el nombre del directorio en donde esta instalado el sistema * - * @return string + * @param string $directorio Directorio en donde se encuentra el sistema + * + * @return void * * @access public */ - function toHtml() // ~X2C + function MenuVertical($directorio) // ~X2C { - return "_link."\">_nombre."\" src=\"images/carp2_f2\" border=\"0\">".$this->_nombre.""; + parent::Menu($directorio); } // -X2C - // +X2C Operation 110 + // +X2C Operation 141 /** - * Constructor. Recibe el nombre del menu, el link y el nombre de la imagen. + * Funcion para agregar el cuerpo de la pagina a la pagina * - * @param array $menu Array con los datos del menu + * @param string $body Cuerpo del mensaje para agregar a la pagina * * @return void * * @access public */ - function MenuVertical($menu) // ~X2C + function addBody($body) // ~X2C { - parent::Menu(null,null); - $this->_nombre = $menu['nombre']; - $this->_link = $menu['link']; - $this->_imagen = $menu['imagenComun']; + $row = array ($body); + $this->_tabla->setCellContents(1,1,$body); + $this->_tabla->setCellAttributes(1,1,'align="center" bgcolor="#FFFFFF"'); } // -X2C diff --git a/marco/php/marco/Pie.php b/marco/php/marco/Pie.php index 6ceb186..2f3712c 100644 --- a/marco/php/marco/Pie.php +++ b/marco/php/marco/Pie.php @@ -72,12 +72,10 @@ class Pie { */ function toHtml() // ~X2C { - $TABLA = new Tabla('width=760 bgcolor="#CCCCCC" align="center"'); + $TABLA = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"'); $row = array ($this->_configuracion['pie_sistema']); - $TABLA->agregarFila($row); - $TABLA->align(0,0,"center"); - $TABLA->setCellBgcolor(0,0,'#CCCCCC'); - return $TABLA->toHtml(1); + $TABLA->addRow($row,'align="center" bgcolor="#CCCCCC"'); + return $TABLA; } // -X2C diff --git a/marco/php/marco/Seccion.php b/marco/php/marco/Seccion.php index 0f841c8..337652c 100644 --- a/marco/php/marco/Seccion.php +++ b/marco/php/marco/Seccion.php @@ -36,6 +36,7 @@ require_once 'ImagenAnimada.php'; require_once 'Menu.php'; require_once 'MenuHorizontal.php'; require_once 'MenuVertical.php'; +require_once 'MenuOculto.php'; // +X2C Class 16 :Seccion @@ -149,65 +150,21 @@ class Seccion extends Pagina { */ function _cargarHijos($hijos) // ~X2C { - $this->_hijos = array (); + if ($this->_tipoMenu == 'vertical'){ + $tmp = new MenuVertical(null); + } + elseif ($this->_tipoMenu == 'horizontal') { + $tmp = new MenuHorizontal(null); + } + else { + $tmp = new MenuOculto(null); + } + foreach ($hijos as $hijo) { - if ($this->_tipoMenu == 'vertical') { - $tmp = new MenuVertical ($hijo); - } - elseif ($this->_tipoMenu == 'horizontal') { - $tmp = new MenuHorizontal ($hijo); - } - else { - $tmp = new Menu (null,$hijo); - } - array_push($this->_hijos, $tmp); + $tmp->agregarComponente($hijo); } - } - // -X2C - - // +X2C Operation 117 - /** - * Devuelve un string con el tipo de menu de la seccion - * - * @return string - * - * @access public - */ - function darTipoMenu() // ~X2C - { - return $this->_tipoMenu; - } - // -X2C - - - // +X2C Operation 121 - /** - * Funcion que devuelve el string del titulo de la seccion - * - * @return string - * - * @access public - */ - function tituloToHtml() // ~X2C - { - $TABLA = new HTML_Table('width=760 align="center" bgcolor="#336699" cellspacing="0" cellpadding="0" border="0"'); - $row = array(''.$this->_darTitulo().''); - $TABLA->addRow($row,'height="1" bgcolor="#336699" align="left"'); - return $TABLA->toHtml(); - } - // -X2C - - // +X2C Operation 122 - /** - * Funcion que devuelve el string del titulo a mostrar en pantalla - * - * @return string - * - * @access private - */ - function _darTitulo() // ~X2C - { - return $this->_nombre; + $this->_hijos = array (); + array_push($this->_hijos, $tmp); } // -X2C @@ -241,47 +198,13 @@ Devuelve 1 si pertenece a la seccion, en caso contrario 0. function _verifSeccionSeleccionada($link_sel) // ~X2C { $tmp = $this->_desSerializarArraySecciones(); - if (isset($tmp) && array_key_exists($link_sel,$tmp) && $tmp[$link_sel] == $this->_nombre) { - $_SESSION['tipoMenu'] = $this->_tipoMenu; - $_SESSION['menuHtml'] = $this->_menuToHtml(); + if (isset($tmp) && array_key_exists($link_sel,$tmp) && ($tmp[$link_sel] == $this->_nombre || (array_key_exists($tmp[$link_sel],$tmp) && $this->_nombre == $tmp[$tmp[$link_sel]]))) { return 1; } return 0; } // -X2C - // +X2C Operation 132 - /** - * Funcion que se encarga de devolver el html del menu a incluir en la pagina (menu vertical, horizontal o titulo segun corresponda) - * - * @return string - * - * @access private - */ - function _menuToHtml() // ~X2C - { - if ($this->_tipoMenu == 'oculto') { - return $this->tituloToHtml(); - } - elseif ($this->_tipoMenu == 'horizontal') { - $row = array(); - foreach ($this->_hijos as $hijo) { - array_push($row,$hijo->toHtml()); - } - $TABLA = new HTML_Table('width=760 align="center" bgcolor="#CCCCCC" cellspacing="0"'); - $TABLA->addRow($row,'bgcolor="#CCCCCC" align="center"'); - return $TABLA; - } - elseif ($this->_tipoMenu == 'vertical') { - $TABLA = new HTML_Table('width=200 align="center" bgcolor="#FFFFFF" cellspacing="0"'); - foreach ($this->_hijos as $hijo) { - $row = array ($hijo->toHtml()); - $TABLA->addRow($row,'bgcolor="#FFFFFF" align="left"'); - } - return $TABLA; - } - } - // -X2C } // -X2C Class :Seccion diff --git a/marco/test/prueba/conf/confSecciones.php b/marco/test/prueba/conf/confSecciones.php index eff6db8..9101eb5 100644 --- a/marco/test/prueba/conf/confSecciones.php +++ b/marco/test/prueba/conf/confSecciones.php @@ -46,20 +46,27 @@ 'imagenComun' => 'usuarios', //IMAGEN COMUN 'imagenMouseOn' => '', // 'imagenSelect' => '', // - 'link' => 'usuarios', //LINK DE LA SECCION - 'tipoMenu' => 'vertical', //TIPO DEL MENU DE HIJOS (vertical, horizontal, oculto) + 'link' => '/www/sistemas/prueba/www/usuarios', //LINK DE LA SECCION + 'tipoMenu' => 'horizontal', //TIPO DEL MENU DE HIJOS (vertical, horizontal, oculto) 'hijos' => array ( //HIJOS PARA EL MENU array ( 'nombre' => 'Filtrar Usuario', //NOMBRE DEL HIJO 1 'imagenComun' => 'usuarios-filtrar', //IMAGEN COMUN 'imagenMouseOn' => '', // 'imagenSelect' => '', // - 'link' => 'usuarios-filtrar', //LINK DEL HIJO + 'link' => '/www/sistemas/prueba/www/usuarios-filtrar', //LINK DEL HIJO + 'mostrar' => true, + 'hijos' => array ( '/www/sistemas/prueba/www/sarasa1', + '/www/sistemas/prueba/www/sarasa2', + '/www/sistemas/prueba/www/sarasa3', + '/www/sistemas/prueba/www/sarasa4', + ), ), array ( 'nombre' => 'ABM Usuario', //NOMBRE DEL HIJO 2 'imagenComun' => 'usuarios-abm', //IMAGEN COMUN 'imagenMouseOn' => '', // 'imagenSelect' => '', // - 'link' => 'usuarios-abm', //LINK DEL HIJO + 'link' => '/www/sistemas/prueba/www/usuarios-abm', //LINK DEL HIJO + 'mostrar' => true, ), ), ), @@ -71,14 +78,15 @@ 'imagenComun' => 'perfiles', //IMAGEN COMUN 'imagenMouseOn' => '', // 'imagenSelect' => '', // - 'link' => 'perfiles', //LINK DE LA SECCION - 'tipoMenu' => 'vertical', //TIPO DEL MENU DE HIJOS (vertical, horizontal, oculto) + 'link' => '/www/sistemas/prueba/www/perfiles', //LINK DE LA SECCION + 'tipoMenu' => 'horizontal', //TIPO DEL MENU DE HIJOS (vertical, horizontal, oculto) 'hijos' => array ( //HIJOS PARA EL MENU array ( 'nombre' => 'Perfiles - Hijo', //NOMBRE DEL HIJO 1 'imagenComun' => 'perfiles-nionio', //IMAGEN COMUN 'imagenMouseOn' => '', // 'imagenSelect' => '', // - 'link' => 'perfiles-hijo', //LINK DEL HIJO + 'link' => '/www/sistemas/prueba/www/perfiles-hijo', //LINK DEL HIJO + 'mostrar' => false, ), ), ), diff --git a/marco/test/prueba/www/sarasa1.php b/marco/test/prueba/www/sarasa1.php new file mode 100644 index 0000000..e15edf1 --- /dev/null +++ b/marco/test/prueba/www/sarasa1.php @@ -0,0 +1,4 @@ +addBody('ESTO ES EL NIETO'); + $MARCO->display(); +?> diff --git a/marco/test/prueba/www/usuarios-filtrar.php b/marco/test/prueba/www/usuarios-filtrar.php index 7601d5b..40abcc4 100644 --- a/marco/test/prueba/www/usuarios-filtrar.php +++ b/marco/test/prueba/www/usuarios-filtrar.php @@ -1,5 +1,6 @@ addTitle('USUARIOS - FILTRAR'); $MARCO->addBody('
ESTO ES UNA PRUEBA PARA LOS HIJOS DE LAS SECCIONES
USUARIO - FILTRAR
'); + $MARCO->addBody('
sarasa1
'); $MARCO->display(); ?> diff --git a/marco/test/prueba/www/usuarios.php b/marco/test/prueba/www/usuarios.php index e1453cc..49b4d15 100644 --- a/marco/test/prueba/www/usuarios.php +++ b/marco/test/prueba/www/usuarios.php @@ -7,7 +7,7 @@ $TABLA = new HTML_Table('width=500 align="center" bgcolor="#FFFFFF" cellspacing="0"'); $row = array ('FILA 1','FILA 2','FILA 3','FILA 4'); - $TABLA->addRow($row,'bgcolor="#FFFFFF" align="center"'); + $TABLA->addRow($row,'bgcolor="#FFFFFF" align="center" class="texto10_negro"'); $MARCO->addBody($TABLA); $MARCO->display();