From f81e0bacd95ec2e24f5da489d4289b8c4fb20a8c Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mart=C3=ADn=20Marrese?= Date: Mon, 28 Apr 2003 20:11:31 +0000 Subject: [PATCH] - Modificacion radical. A partir de ahora se utiliza la clase HTML_Page para generar la pagina. Queda todo mucho mas prolijo. --- marco/doc/uml/Marco.xmi | 116 +++++++++++---------- marco/php/marco/Copete.php | 16 ++- marco/php/marco/Estilo.php | 2 +- marco/php/marco/Marco.php | 120 +++++++++++++++------- marco/php/marco/Menu.php | 10 +- marco/php/marco/Pie.php | 14 +++ marco/php/marco/Script.php | 2 +- marco/php/marco/Seccion.php | 2 +- marco/php/marco/Titulo.php | 14 +++ marco/test/prueba/www/include/append.php | 2 +- marco/test/prueba/www/include/prepend.php | 4 +- marco/test/prueba/www/index.php | 5 +- 12 files changed, 199 insertions(+), 108 deletions(-) diff --git a/marco/doc/uml/Marco.xmi b/marco/doc/uml/Marco.xmi index 4dcb3d0..9316f8b 100644 --- a/marco/doc/uml/Marco.xmi +++ b/marco/doc/uml/Marco.xmi @@ -9,28 +9,30 @@ - + + + + + - - - + + + - - @@ -39,6 +41,7 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m + @@ -46,6 +49,7 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m + @@ -75,6 +79,7 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m + @@ -141,88 +146,83 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m + - - - - - - - - - - - + + + + + + + + + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - + + - + - - - - - - - - + + @@ -231,9 +231,11 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m + + @@ -259,17 +261,17 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m + - + - @@ -289,14 +291,15 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m - + + @@ -317,6 +320,7 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m + diff --git a/marco/php/marco/Copete.php b/marco/php/marco/Copete.php index 2251ad5..fab27bd 100644 --- a/marco/php/marco/Copete.php +++ b/marco/php/marco/Copete.php @@ -81,6 +81,20 @@ class Copete { } // -X2C + // +X2C Operation 94 + /** + * Funcion que devuelve el html de la imagen a incluir. + * + * @return string + * + * @access public + */ + function darCopete() // ~X2C + { + return ''; + } + // -X2C + } // -X2C Class :Copete -?> +?> \ No newline at end of file diff --git a/marco/php/marco/Estilo.php b/marco/php/marco/Estilo.php index 3749de9..14512e7 100644 --- a/marco/php/marco/Estilo.php +++ b/marco/php/marco/Estilo.php @@ -110,4 +110,4 @@ class Estilo { } // -X2C Class :Estilo -?> +?> \ No newline at end of file diff --git a/marco/php/marco/Marco.php b/marco/php/marco/Marco.php index 8b59434..20aa205 100644 --- a/marco/php/marco/Marco.php +++ b/marco/php/marco/Marco.php @@ -25,16 +25,20 @@ // require_once 'PEAR.php'; -require_once 'include/lib/HTML/Tabla.php'; require_once 'include/lib/marco/Copete.php'; require_once 'include/lib/marco/Titulo.php'; require_once 'include/lib/marco/Pie.php'; -require_once 'include/lib/marco/Script.php'; -require_once 'include/lib/marco/Estilo.php'; require_once 'include/lib/marco/Menu.php'; -require_once 'include/lib/hook/Hook.php'; //Esto es culpa de Leandro, asi que se las arreglan con el. +//Agregado para el uso de HTML_Page (Uso la version Original de Pear) +require_once 'HTML/Page.php'; +require_once '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'); // +X2C Class 3 :Marco @@ -44,7 +48,7 @@ Trabaja de forma general, llamando a los demas objetos para la realizacion del m * * @access public */ -class Marco { +class Marco extends HTML_Page { /** * Nombre del directorio en donde se encuentra el sistema. * @@ -81,24 +85,6 @@ class Marco { */ var $_copete; - /** - * Referencia al objeto Script - * - * @var Script $script - * - * @access private - */ - var $_script; - - /** - * Referencia al objeto Estilo. - * - * @var Estilo $estilo - * - * @access private - */ - var $_estilo; - /** * Referencia al objeto Menu. * @@ -131,14 +117,11 @@ class Marco { */ function Marco($directorio) // ~X2C { + parent::HTML_Page(); $this->_directorio = $directorio; - $this->_obtenerConfiguracion(); - $this->_titulo = new Titulo ($this->_configuracion); $this->_copete = new Copete ($this->_directorio); - $this->_script = new Script ($this->_directorio); - $this->_estilo = new Estilo ($this->_directorio); $this->_menu = new Menu ($this->_directorio); $this->_pie = new Pie ($this->_configuracion); } @@ -154,15 +137,9 @@ class Marco { */ function toHtmlPrepend() // ~X2C { - - - $row = array ('colspan' => $this->_configuracion['menu'] + 1); - - +/* $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 - print $this->_script->toHtml(); //Agrego el archivo de script generico como aquellos que se agregaron despues - print $this->_estilo->toHtml(); //Agrego el archivo de estilo generico como aquellos que se agregaron despues Hook::hash('marco-html02'); Hook::hash('marco-html03',$row); print $this->_copete->toHtml(); //Agrego el copete del sistema @@ -174,6 +151,7 @@ class Marco { 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 +*/ } // -X2C @@ -187,14 +165,14 @@ class Marco { */ function toHtmlAppend() // ~X2C { - $row = array ('colspan' => $this->_configuracion['menu'] + 1); - +/* $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 @@ -210,7 +188,8 @@ class Marco { */ function agregarScript($archivo) // ~X2C { - $this->_script->agregarArchivo($archivo); + $tmp = SISTEMA_DIR_BASE.'/'.$this->_directorio.SCRIPT_DIR_BASE.$archivo; + $this->addScript($tmp); } // -X2C @@ -226,7 +205,8 @@ class Marco { */ function agregarEstilo($archivo) // ~X2C { - $this->_estilo->agregarArchivo($archivo); + $tmp = SISTEMA_DIR_BASE.'/'.$this->_directorio.ESTILO_DIR_BASE.$archivo; + $this->addStyleSheet($tmp); } // -X2C @@ -244,6 +224,70 @@ class Marco { } // -X2C + // +X2C Operation 91 + /** + * Funcion que se encarga mostrar en pantalla el contenido completo de la pagina. Este metodo utiliza la clase HTML_Page, lo que nos permite utilizar solamente clases y nada de hooks. + * + * @return string + * + * @access public + */ + function display() // ~X2C + { + //Agrego el titulo, el script generico y los estilos genericos. + $this->setTitle($this->_titulo->darTitulo()); + $this->addScript(SCRIPT_DIR_BASE.SCRIPT_GENERICO); + $this->addStyleSheet(ESTILO_DIR_BASE.ESTILO_GENERICO); + + $TABLA_GRANDE = new HTML_Table('width=760 align="center" bgcolor="#FFFFFF" cellspacing="0" cellpadding="0" border="0"'); + //AGREGO EL COPETE + $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"'); + //AGREGO EL TITULO DE LA SECCION + //TODO: Agregar segun corresponda el titulo + //AGREGO EL MENU HORIZONTAL DE LA SECCION + //TODO: Agregar segun corresponda el menu horizontal + //AGREGO EL MENU VERTICAL DE LA SECCION + //TODO: Agregar segun corresponda el menu vertical + //AGREGO EL BODY ORIGINAL A LA TABLA GRANDE + //TODO: Agregar el body original a la tabla grande + // Lo que hay ahora es una prueba + $row = array ($this->body); + $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"'); + //TODO: Agregar el pie de pagina del sistema + + //ASIGNO EL NUEVO BODY DE LA PAGINA + $this->body = $TABLA_GRANDE->toHtml(); + //MUESTRO EN PANTALLA LA PAGINA + parent::display(); + //SI ESTOY FUNCIONA SOY FELIZ....->MARTIN MARRESE + } + // -X2C + + // +X2C Operation 97 + /** + * + * @param Mixed $body Mixed. Recibe el contenido a agregar como body de la pagina + * + * @return void + * + * @access public + */ + function addBody($body) // ~X2C + { + //ACA TENGO QUE AGREGAR TODO LOQ UE VA EN EL BODY, MAS LA INFO QUE ME PASAN + //LOS PROGRAMADORES. + //Ahora queda asi porque lo estoy probando + $this->body = $body; + } + // -X2C + } // -X2C Class :Marco ?> diff --git a/marco/php/marco/Menu.php b/marco/php/marco/Menu.php index 66157af..7cd98f8 100644 --- a/marco/php/marco/Menu.php +++ b/marco/php/marco/Menu.php @@ -25,6 +25,8 @@ // require_once 'Seccion.php'; +require_once 'HTML/Table.php'; + define ('PRE_DIR' ,'/var/www/intranet/www/sistemas/'); define ('POST_DIR','/conf/MenuSerializado'); @@ -208,11 +210,9 @@ class Menu { foreach ($this->_secciones as $sec) { array_push($row,$sec->toHtml()); } - $TABLA = new Tabla('width="760" align="center" bgcolor="#CCCCCC" cellspacing="0"'); - $TABLA->agregarFila($row); - $TABLA->align(0,0,"center"); - $TABLA->setCellBgcolor(0,0,'#CCCCCC'); - return $TABLA->toHtml(1); + $TABLA = new HTML_Table('width="760" align="center" bgcolor="#CCCCCC" cellspacing="0"'); + $TABLA->addRow($row,'align="center" bgcolor="#CCCCCC"'); + return $TABLA; } // -X2C diff --git a/marco/php/marco/Pie.php b/marco/php/marco/Pie.php index 0ea3c99..6ceb186 100644 --- a/marco/php/marco/Pie.php +++ b/marco/php/marco/Pie.php @@ -81,6 +81,20 @@ class Pie { } // -X2C + // +X2C Operation 95 + /** + * Funcion que devuelve el pie a incluir en el marco. + * + * @return string + * + * @access public + */ + function darPie() // ~X2C + { + return $this->_configuracion['pie_sistema']; + } + // -X2C + } // -X2C Class :Pie ?> \ No newline at end of file diff --git a/marco/php/marco/Script.php b/marco/php/marco/Script.php index 1ec2364..a7a7fc1 100644 --- a/marco/php/marco/Script.php +++ b/marco/php/marco/Script.php @@ -108,4 +108,4 @@ class Script { } // -X2C Class :Script -?> +?> \ No newline at end of file diff --git a/marco/php/marco/Seccion.php b/marco/php/marco/Seccion.php index bf5f53f..6a47ec9 100644 --- a/marco/php/marco/Seccion.php +++ b/marco/php/marco/Seccion.php @@ -128,4 +128,4 @@ class Seccion extends Pagina { } // -X2C Class :Seccion -?> +?> \ No newline at end of file diff --git a/marco/php/marco/Titulo.php b/marco/php/marco/Titulo.php index 9718aad..9076ee2 100644 --- a/marco/php/marco/Titulo.php +++ b/marco/php/marco/Titulo.php @@ -75,6 +75,20 @@ class Titulo { } // -X2C + // +X2C Operation 96 + /** + * Funcion que devuelve el titulo del sistema. + * + * @return string + * + * @access public + */ + function darTitulo() // ~X2C + { + return $this->_configuracion['titulo_sistema']; + } + // -X2C + } // -X2C Class :Titulo ?> \ No newline at end of file diff --git a/marco/test/prueba/www/include/append.php b/marco/test/prueba/www/include/append.php index 747dc2a..54c2356 100644 --- a/marco/test/prueba/www/include/append.php +++ b/marco/test/prueba/www/include/append.php @@ -3,6 +3,6 @@ //ARCHIVO DE PRUEBA DEL OBJETO MARCO -$marco->toHtmlAppend(); +//$marco->toHtmlAppend(); ?> diff --git a/marco/test/prueba/www/include/prepend.php b/marco/test/prueba/www/include/prepend.php index d4b5b7d..e0dc490 100644 --- a/marco/test/prueba/www/include/prepend.php +++ b/marco/test/prueba/www/include/prepend.php @@ -7,8 +7,6 @@ require_once 'include/lib/marco/Marco.php'; session_start(); -$marco = new Marco ('prueba'); - -$marco->toHtmlPrepend(); +$MARCO = new Marco ('prueba'); ?> diff --git a/marco/test/prueba/www/index.php b/marco/test/prueba/www/index.php index 67845c9..094d1c9 100644 --- a/marco/test/prueba/www/index.php +++ b/marco/test/prueba/www/index.php @@ -1 +1,4 @@ - +addBody(''); + $MARCO->display(); +?> -- 2.43.0