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;
135 $this->_configuracion = include 'www/sistemas/'.$this->_directorio.'/conf/configuracion.php';
136 $this->_titulo = new Titulo ($this->_configuracion);
137 $this->_copete = new Copete ($this->_directorio);
138 $this->_script = new Script ($this->_directorio);
139 $this->_estilo = new Estilo ($this->_directorio);
140 $this->_menu = new Menu ($this->_directorio);
141 $this->_pie = new Pie ($this->_configuracion);
147 * Funcion que devuelve un string en html para ser agregado en el prepend.php del sistema.
153 function toHtmlPrepend() // ~X2C
155 $row = array ('colspan' => $this->_configuracion['menu'] + 1);
156 Hook::hash('marco-html01');
157 print $this->_titulo->toHtml(); //Agrego el titulo del sistema segun su archivo de configuracion
159 print $this->_script->toHtml(); //Agrego el archivo de script generico como aquellos que se agregaron despues
161 print $this->_estilo->toHtml(); //Agrego el archivo de estilo generico como aquellos que se agregaron despues
163 Hook::hash('marco-html02');
164 Hook::hash('marco-html03',$row);
165 print $this->_copete->toHtml(); //Agrego el copete del sistema
167 Hook::hash('marco-html04');
168 Hook::hash('marco-html03',$row);
169 // print $this->_menu->toHtml(); //Agrego los menues del sistema
171 Hook::hash('marco-html04');
172 Hook::hash('marco-html03',$row);
173 //ACA QUEDA LISTO PARA QUE SE AGREGUEN EN EL MEDIO LAS PAGINAS DEL SISTEMA
179 * Funcion que devuelve un string html para ser agregado al append.php del sistema.
185 function toHtmlAppend() // ~X2C
187 $row = array ('colspan' => $this->_configuracion['menu'] + 1);
189 Hook::hash('marco-html04');
190 Hook::hash('marco-html03',$row);
191 print $this->_pie->toHtml(); //Agrego el pie de pagina al sistema
193 Hook::hash('marco-html04');
194 Hook::hash('marco-html05');
200 * Funcion que permite agregar archivos de script al sistema, ademas del generico.
202 * @param string $archivo Nombre del archivo a incluir.
208 function agregarScript($archivo) // ~X2C
210 $this->_script->agregarArchivo($archivo);
216 * Funcion que permite agregar archivos de estilo al sistema, ademas del generico.
218 * @param string $archivo Nombre del archivo a incluir.
224 function agregarEstilo($archivo) // ~X2C
226 $this->_estilo->agregarArchivo($archivo);
232 * Funcion que se encarga de la obtencion y generacion del array de configuracion. Recibe como parametro el directorio en donde se encuentra el sistema.
234 * @param string $directorio Nombre del directorio en donde se encuentra el sistema.
240 function _obtenerConfiguracion($directorio) // ~X2C
242 trigger_error('Not implemented!', E_USER_WARNING);
246 } // -X2C Class :Marco