X-Git-Url: https://git.llucax.com/mecon/meconlib.git/blobdiff_plain/3e43dee8eaa2c6e3d6accc222dd965d4acf5f044..c0cc0ddabd54d39b68079ef97f414b799211aa67:/lib/MECON/Marco/Seccion.php?ds=inline diff --git a/lib/MECON/Marco/Seccion.php b/lib/MECON/Marco/Seccion.php index 0d6719a..98190e4 100644 --- a/lib/MECON/Marco/Seccion.php +++ b/lib/MECON/Marco/Seccion.php @@ -24,32 +24,25 @@ Autor: Martin Marrese $Id$ -----------------------------------------------------------------------------*/ -// +X2C includes -require_once 'MECON/Marco/Pagina.php'; -// ~X2C - -//Require Agregados por MMARRE, no pasan por el xmi2code require_once 'MECON/Marco/ImagenAnimada.php'; require_once 'MECON/Marco/Menu.php'; require_once 'MECON/Marco/MenuHorizontal.php'; require_once 'MECON/Marco/MenuVertical.php'; require_once 'MECON/Marco/MenuOculto.php'; -// +X2C Class 16 :MECON_Marco_Seccion /** - * Clase seccion para el manejo de las secciones + * Clase para el manejo de las secciones * - * @package MECON_Marco * @access public */ -class MECON_Marco_Seccion extends MECON_Marco_Pagina { +class MECON_Marco_Seccion { /** * Nombre de la seccion. * * @var string $nombre * @access private */ - var $_nombre; + var $_nombre = ''; /** * Este es el nombre de la imagen @@ -73,7 +66,7 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { * @var string $tipoMenu * @access private */ - var $_tipoMenu; + var $_tipoMenu = ''; /** * Array con la configuracion del sistema @@ -81,19 +74,26 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { * @var array $configuracion * @access private */ - var $_configuracion; + var $_configuracion = array(); /** + * Contiene el html del menu de la seccion + * * @var string $menuHtml * @access private */ - var $_menuHtml; + var $_menuHtml = ''; - // ~X2C + /** + * Nombre del archivo pagina. + * + * @var string $link + * @access private + */ + var $_link = ''; - // +X2C Operation 63 /** - * Constructor. Recibe como parametro el nombre de la seccion + * Recibe como parametro el nombre de la seccion * * @param array $seccion Array con la informacion de la seccion * @param array $configuracion Array con la configuracion del sistema @@ -101,19 +101,23 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { * @return void * @access public */ - function MECON_Marco_Seccion($seccion, $configuracion) // ~X2C + function MECON_Marco_Seccion($seccion, $configuracion) { $this->_nombre = @strval($seccion['nombre']); $imgComun = @strval($seccion['imagenComun']); $imgMouseOn = @strval($seccion['imagenMouseOn']); $imgSelect = @strval($seccion['imagenSelect']); - $this->_tipoMenu = @strval($seccion['tipoMenu']); - if (@$seccion['link']) { - parent::MECON_Marco_Pagina($seccion['link']); - } - $this->_imagen = new MECON_Marco_ImagenAnimada($imgComun, $imgMouseOn, $imgSelect, - $configuracion['directorios']['imagenes'], $this->_nombre, - $configuracion['directorios']['root'].'/'.$this->_link); + $this->_tipoMenu = @strval(strtolower($seccion['tipoMenu'])); + $this->_link = @strval($seccion['link']); + + $this->_imagen = new MECON_Marco_ImagenAnimada( $imgComun, + $imgMouseOn, + $imgSelect, + $configuracion['directorios']['imagenes'], + $this->_nombre, + $configuracion['directorios']['root'].'/'. + $this->_link, + @strval($seccion['alt'])); if (!is_null($configuracion)) { $this->_configuracion = $configuracion; } @@ -121,9 +125,7 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { $this->_cargarHijos($seccion['hijos']); } } - // -X2C - // +X2C Operation 64 /** * Funcion que devuelve un string con el html a imprimir por pantalla. * @@ -132,7 +134,7 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { * @return string * @access public */ - function toHtml($link_sel) // ~X2C + function toHtml($link_sel) { if (!$this->_configuracion['links']) { $this->_imagen->setHabilitada(false); @@ -142,9 +144,7 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { } return $this->_imagen->toHtml(); } - // -X2C - // +X2C Operation 84 /** * Carga el array con los objetos hijos de la seccion * @@ -153,7 +153,7 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { * @return void * @access private */ - function _cargarHijos($hijos) // ~X2C + function _cargarHijos($hijos) { if ($this->_tipoMenu == 'vertical'){ $tmp = new MECON_Marco_MenuVertical($this->_configuracion); @@ -165,20 +165,20 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { $tmp = new MECON_Marco_MenuOculto($this->_configuracion); } foreach ($hijos as $hijo) { + $hijo['alt'] = @$hijo['alt'] ? $hijo['alt'] : $hijo['nombre']; + $hijo['nombre'] = $this->_nombre.'-'.$hijo['nombre']; $tmp->agregarComponente($hijo); } $this->_hijos = $tmp; } - // -X2C - // +X2C Operation 127 /** * Funcion que se encarga de desserializar el array asociativo paginas-secciones. * * @return void * @access private */ - function _desSerializarArraySecciones() // ~X2C + function _desSerializarArraySecciones() { $file_cache = strtr($this->_configuracion['directorios']['root'],'/','_'); $tmp = $this->_configuracion['directorios_fs']['cache'].'/'.ARRAYSECCIONES_SERIALIZADO.'_'.$file_cache; @@ -191,44 +191,42 @@ class MECON_Marco_Seccion extends MECON_Marco_Pagina { return null; } } - // -X2C - // +X2C Operation 129 /** - * Funcion que se encarga de verificar si la pagina a la cual se quiere acceder pertenece a la seccion que estoy dibujando. Se utiliza como agregado en toHtml. -Devuelve 1 si pertenece a la seccion, en caso contrario 0. + * Funcion que se encarga de verificar si la pagina a la cual se quiere + * acceder pertenece a la seccion que estoy dibujando. Se utiliza como + * agregado en toHtml. + * Devuelve 1 si pertenece a la seccion, en caso contrario 0. * * @param string $link_sel Nombre de la pagina a la cual se quiere acceder. * * @return int * @access public */ - function verifSeccionSeleccionada($link_sel) // ~X2C + function verifSeccionSeleccionada($link_sel) { $tmp = $this->_desSerializarArraySecciones(); $retorno = 0; if (isset($tmp) && array_key_exists($this->_nombre,$tmp)) { foreach ($tmp[$this->_nombre] as $t) { - if ($link_sel == $t) { + if (rtrim($link_sel, '/') == rtrim($t, '/')) { $retorno = 1; } } } return $retorno; } - // -X2C - - - - // +X2C Operation 202 + /** + * Devuelve el html a mostrar en pantalla + * * @param string $link_sel Nombre de la seccion seleccionada * @param bool $ultimo Indica si es el ultimo componente del menu.....en caso de serlo, debe mostrar la imagen con codito * * @return string * @access public */ - function toHtmlVertical($link_sel, $ultimo = false) // ~X2C + function toHtmlVertical($link_sel, $ultimo = false) { $style = "text-decoration:none"; @@ -243,27 +241,16 @@ Devuelve 1 si pertenece a la seccion, en caso contrario 0. $sec = array (); if ($this->verifSeccionSeleccionada($link_sel)) { - if ($ultimo) { - $sec[] = $link_start.''.$link_end; - } - else { - $sec[] = $link_start.''.$link_end; - } + $sec[] = $link_start.''.$link_end; } else { - if ($ultimo) { - $sec[] = $link_start.''.$link_end; - } - else { - $sec[] = $link_start.''.$link_end; - } + $sec[] = $link_start.''.$link_end; } - $sec[] = ''.$link_start.'  '.$this->_nombre.$link_end.''; + $nombre = strstr($this->_nombre, '-'); + $nombre = substr($nombre, 1); + $sec[] = '

'.$nombre.'

'; return $sec; } - // -X2C - -} // -X2C Class :MECON_Marco_Seccion - +} ?> \ No newline at end of file