X-Git-Url: https://git.llucax.com/mecon/meconlib.git/blobdiff_plain/5bef6cb12aa86876a8cffe8efc6a1623eb03ba1f..11218a72ff7caf5ea536c329c05827c024fc9e09:/lib/MECON/Marco.php?ds=sidebyside diff --git a/lib/MECON/Marco.php b/lib/MECON/Marco.php index b18d48b..6adc181 100644 --- a/lib/MECON/Marco.php +++ b/lib/MECON/Marco.php @@ -30,7 +30,7 @@ require_once 'MECON/Marco/Menu.php'; require_once 'MECON/Marco/MenuPrincipal.php'; //Agregado para el uso de HTML_Page (Uso la version Original de Pear) -require_once 'HTML/Page.php'; +require_once 'MECON/HTML/Page.php'; require_once 'HTML/Table.php'; //Defino los directorios por default @@ -39,22 +39,19 @@ define ('DIR_ESTILOS' , 'css' ); define ('DIR_JS' , 'js' ); define ('DIR_WWW' , 'www' ); define ('DIR_CACHE' , '/tmp' ); -// + //Defino las constantes define ('SCRIPT_DIR_BASE', '/MECON/js/' ); define ('ESTILO_DIR_BASE', '/MECON/css/'); define ('SCRIPT_GENERICO', 'marco.js' ); define ('ESTILO_GENERICO', 'marco.css' ); -// -// +X2C Class 3 :MECON_Marco /** * Clase encargada del manejo del Marco de los sistemas. * - * @package MECON * @access public */ -class MECON_Marco extends HTML_Page { +class MECON_Marco extends MECON_HTML_Page { /** * Array con los datos de configuracion del sistema. * @@ -87,9 +84,6 @@ class MECON_Marco extends HTML_Page { */ var $_links = true; - // ~X2C - - // +X2C Operation 26 /** * Constructor. Recibe como parametro el path del archivo de configuracion * @@ -99,15 +93,10 @@ class MECON_Marco extends HTML_Page { * @return void * @access public */ - function MECON_Marco($arch_configuracion, $obj_permiso = null) // ~X2C + function MECON_Marco($arch_configuracion, $obj_permiso = null) { //Creo el objeto pagina - parent::HTML_Page(array ('doctype' => 'HTML 4.01 Transitional', - 'charset' => 'iso-8859-1' , - 'lineend' => 'unix' , - 'language' => 'es' , - 'cache' => 'false' , - 'simple' => 'true' )); + parent::MECON_HTML_Page(); //Obtengo y arreglo la configuracion $this->_obtenerConfiguracion($arch_configuracion); //Agrego el objeto permiso a la configuracion @@ -122,9 +111,7 @@ class MECON_Marco extends HTML_Page { $this->_configuracion['subtitulo'] = ''; $this->_configuracion['titulo_sistema2'] = ''; } - // -X2C - // +X2C Operation 32 /** * Funcion que se encarga de la obtencion y generacion del array de configuracion. Recibe como parametro el path del archivo de configuracion * @@ -133,7 +120,7 @@ class MECON_Marco extends HTML_Page { * @return array * @access private */ - function _obtenerConfiguracion($archivo) // ~X2C + function _obtenerConfiguracion($archivo) { $this->_configuracion = include $archivo; //Verifico que existan los directorios, si no es asi los reemplazo por los defaults @@ -156,10 +143,7 @@ class MECON_Marco extends HTML_Page { $this->_configuracion['directorios_fs']['cache'] = DIR_CACHE; } } - // -X2C - - // +X2C Operation 97 /** * Redefinicion de la funcion que permite agregar objetos o html al body de la pagina Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCSS. @@ -170,13 +154,11 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function addBody($body) // ~X2C + function addBody($body) { $this->addBodyContent($body); } - // -X2C - // +X2C Operation 124 /** * Funcion que permite concatenar lo pasado como parametro al titulo del sistema * @@ -185,13 +167,11 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function addTitle($titulo) // ~X2C + function addTitle($titulo) { $this->_configuracion['titulo_sistema2'].= ' - '.$titulo; } - // -X2C - // +X2C Operation 207 /** * Setea la variable que define si hay que separar el body del menu * @@ -200,13 +180,11 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function setEspacios($espacios = true) // ~X2C + function setEspacios($espacios = true) { $this->_espacios = $espacios; } - // -X2C - // +X2C Operation 214 /** * Agrega un menu vertical a la izquierda en la pantalla. * @@ -215,16 +193,14 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function addMenuVertical($menuVertical) // ~X2C + function addMenuVertical($menuVertical) { if ((is_object($menuVertical)) && (method_exists($menuVertical, 'getcss'))) { $this->addStyleSheet($menuVertical->getCSS()); } $this->_menuVertical = $menuVertical; } - // -X2C - // +X2C Operation 218 /** * Permite habilitar o deshabilitar los links de una pagina (todos) * @@ -233,20 +209,18 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function habilitarLinks($param = true) // ~X2C + function habilitarLinks($param = true) { $this->_links = $param; } - // -X2C - // +X2C Operation 220 /** * Devuelve el html de la pagina * * @return string * @access public */ - function toHTML() // ~X2C + function toHTML() { //Seteo el titulo de la pagina parent::setTitle($this->_configuracion['titulo_sistema'].$this->_configuracion['titulo_sistema2']); @@ -262,31 +236,14 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS //Agrego el contenido al menu $menu->addBody($body); //Agrego el Marco completo a Page - $this->setBody($menu->toHtml()); - return parent::toHTML(); - } - // -X2C - - // +X2C Operation 223 - /** - * Redefinicion de la funcion que permite agregar objetos o html al body de la pagina -Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCSS. - * - * @param mixed $content Contenido a agregar en la pagina - * - * @return void - * @access public - */ - function addBodyContent($content) // ~X2C - { - if ((is_object($content)) && (method_exists($content, 'getcss'))) { - $this->addStyleSheet($content->getCSS()); + $this->setBody('
'); + foreach ($menu->resultado AS $res) { + $this->addBodyContent($res); } - parent::addBodyContent($content); + $this->addBodyContent('
'); + return parent::toHTML(); } - // -X2C - // +X2C Operation 224 /** * Funcion que permite concatenar lo pasado como parametro al titulo del sistema * @@ -295,13 +252,18 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function addSubTitle($subtitulo) // ~X2C + function addSubTitle($subtitulo) { - $this->_configuracion['subtitulo'].= ' - '.$subtitulo; + if (is_a($subtitulo, 'mecon_html_link')) { + $subtitulo->updateAttributes( + array('class' => 'mecon_marco_subtitle')); + } + if (method_exists($subtitulo, 'tohtml')) { + $subtitulo = $subtitulo->toHtml(); + } + $this->_configuracion['subtitulo'] .= ' - ' . $subtitulo; } - // -X2C - // +X2C Operation 225 /** * Concatena lo pasado por parametro al titulo del sistema * @@ -310,14 +272,12 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function setTitle($titulo = '') // ~X2C + function setTitle($titulo = '') { $this->_configuracion['titulo_sistema2'] = ($titulo) ? ' - '.$titulo : ''; } - // -X2C - // +X2C Operation 226 /** * Concatena lo pasado por parametro al titulo de seccion * @@ -326,14 +286,12 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function setSubtitle($subtitulo = '') // ~X2C + function setSubtitle($subtitulo = '') { $this->_configuracion['subtitulo'] = ($subtitulo) ? ' - '.$subtitulo : ''; } - // -X2C - // +X2C Operation 243 /** * Permite hacer que en el copete aparezca un icono de ayuda, en un lugar predefinido. Sobreescribe lo seteado anteriormente por cualquier metodo. * @@ -342,12 +300,27 @@ Si es un objeto debe tener un metodo toHtml y opcionalmente puede tener un getCS * @return void * @access public */ - function setAyuda($ayuda) // ~X2C + function setAyuda($ayuda) { $this->_configuracion['ayuda'] = $ayuda; } - // -X2C - -} // -X2C Class :MECON_Marco + /** + * Permite obtener el array de configuracion completo. En caso de recibir una clave como parametro devuelve su valor. Solo se tienen en cuenta las claves del primer nivel. + * + * @param string $clave Clave del array de configuracion a obtener. + * + * @return mixed + * @access public + */ + function getConf($clave = null) + { + if ($clave) { + return @$this->_configuracion[$clave]; + } + else { + return $this->_configuracion; + } + } +} ?> \ No newline at end of file