2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
3 // +----------------------------------------------------------------------+
5 // +----------------------------------------------------------------------+
6 // | Copyright (c) 1997-2003 The PHP Group |
7 // +----------------------------------------------------------------------+
8 // | This source file is subject to version 2.02 of the PHP license, |
9 // | that is bundled with this package in the file LICENSE, and is |
10 // | available at through the world-wide-web at |
11 // | http://www.php.net/license/2_02.txt. |
12 // | If you did not receive a copy of the PHP license and are unable to |
13 // | obtain it through the world-wide-web, please send a note to |
14 // | license@php.net so we can mail you a copy immediately. |
15 // +----------------------------------------------------------------------+
16 // | Created: Mon Apr 14 16:23:22 2003
17 // | Author: Martin Marrese <mmarre@mecon.gov.ar>
18 // +----------------------------------------------------------------------+
27 require_once 'PEAR.php';
28 require_once 'include/lib/HTML/Tabla.php';
29 require_once 'include/lib/marco/Copete.php';
30 require_once 'include/lib/marco/Titulo.php';
31 require_once 'include/lib/marco/Pie.php';
32 require_once 'include/lib/marco/Script.php';
33 require_once 'include/lib/marco/Estilo.php';
34 require_once 'include/lib/marco/Menu.php';
36 require_once 'include/lib/hook/Hook.php'; //Esto es culpa de Leandro, asi que se las arreglan con el.
40 // +X2C Class 3 :Marco
42 * Clase que se encarga del manejo del marco en general en los sistemas de intranet.
43 Trabaja de forma general, llamando a los demas objetos para la realizacion del marco.
49 * Nombre del directorio en donde se encuentra el sistema.
51 * @var string $directorio
58 * Array con los datos de configuracion del sistema.
60 * @var array $configuracion
67 * Referencia al objeto Titulo.
76 * Referencia al objeto Copete.
85 * Referencia al objeto Script
94 * Referencia al objeto Estilo.
103 * Referencia al objeto Menu.
112 * Referencia al objeto Pie.
124 * Constructor. Recibe como parametro el nombre del directorio en donde se encuentra el sistema.
126 * @param string $directorio Nombre del directorio en donde se encuentra el sistema.
132 function Marco($directorio) // ~X2C
134 $this->_directorio = $directorio;
136 $this->_obtenerConfiguracion();
138 $this->_titulo = new Titulo ($this->_configuracion);
139 $this->_copete = new Copete ($this->_directorio);
140 $this->_script = new Script ($this->_directorio);
141 $this->_estilo = new Estilo ($this->_directorio);
142 $this->_menu = new Menu ($this->_directorio);
143 $this->_pie = new Pie ($this->_configuracion);
149 * Funcion que devuelve un string en html para ser agregado en el prepend.php del sistema.
155 function toHtmlPrepend() // ~X2C
157 $row = array ('colspan' => $this->_configuracion['menu'] + 1);
158 Hook::hash('marco-html01');
159 print $this->_titulo->toHtml(); //Agrego el titulo del sistema segun su archivo de configuracion
161 print $this->_script->toHtml(); //Agrego el archivo de script generico como aquellos que se agregaron despues
163 print $this->_estilo->toHtml(); //Agrego el archivo de estilo generico como aquellos que se agregaron despues
165 Hook::hash('marco-html02');
166 Hook::hash('marco-html03',$row);
167 print $this->_copete->toHtml(); //Agrego el copete del sistema
169 Hook::hash('marco-html04');
170 Hook::hash('marco-html03',$row);
171 // print $this->_menu->toHtml(); //Agrego los menues del sistema
173 Hook::hash('marco-html04');
174 Hook::hash('marco-html03',$row);
175 //ACA QUEDA LISTO PARA QUE SE AGREGUEN EN EL MEDIO LAS PAGINAS DEL SISTEMA
181 * Funcion que devuelve un string html para ser agregado al append.php del sistema.
187 function toHtmlAppend() // ~X2C
189 $row = array ('colspan' => $this->_configuracion['menu'] + 1);
191 Hook::hash('marco-html04');
192 Hook::hash('marco-html03',$row);
193 print $this->_pie->toHtml(); //Agrego el pie de pagina al sistema
195 Hook::hash('marco-html04');
196 Hook::hash('marco-html05');
202 * Funcion que permite agregar archivos de script al sistema, ademas del generico.
204 * @param string $archivo Nombre del archivo a incluir.
210 function agregarScript($archivo) // ~X2C
212 $this->_script->agregarArchivo($archivo);
218 * Funcion que permite agregar archivos de estilo al sistema, ademas del generico.
220 * @param string $archivo Nombre del archivo a incluir.
226 function agregarEstilo($archivo) // ~X2C
228 $this->_estilo->agregarArchivo($archivo);
234 * Funcion que se encarga de la obtencion y generacion del array de configuracion. Recibe como parametro el directorio en donde se encuentra el sistema.
240 function _obtenerConfiguracion() // ~X2C
242 $this->_configuracion = include 'www/sistemas/'.$this->_directorio.'/conf/configuracion.php';
246 } // -X2C Class :Marco