]> git.llucax.com Git - mecon/meconlib.git/blobdiff - lib/MECON/Marco/Seccion.php
Se limpia un poco y se agregan metodos para seleccionar y obtener el valor seleccionado.
[mecon/meconlib.git] / lib / MECON / Marco / Seccion.php
index 375c378908e62f9708f6bca876083c62396d2a09..0d6719a17aac31514e011ea431fce3466256ffa0 100644 (file)
@@ -1,31 +1,28 @@
-<?php
-// vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
-// +----------------------------------------------------------------------+
-// | PHP Version 4                                                        |
-// +----------------------------------------------------------------------+
-// | Copyright (c) 1997-2003 The PHP Group                                |
-// +----------------------------------------------------------------------+
-// | This source file is subject to version 2.02 of the PHP license,      |
-// | that is bundled with this package in the file LICENSE, and is        |
-// | available at through the world-wide-web at                           |
-// | http://www.php.net/license/2_02.txt.                                 |
-// | If you did not receive a copy of the PHP license and are unable to   |
-// | obtain it through the world-wide-web, please send a note to          |
-// | license@php.net so we can mail you a copy immediately.               |
-// +----------------------------------------------------------------------+
-// | Created: Mon Apr 14 16:23:22 2003
-// | Author:  Martin Marrese <mmarre@mecon.gov.ar>
-// +----------------------------------------------------------------------+
-//
-// $Id$
-// $Author$
-// $URL$
-// $Date$
-// $Rev$
-//
+<?php /* vim: set binary expandtab tabstop=4 shiftwidth=4 textwidth=80:
+-------------------------------------------------------------------------------
+                             Ministerio de Economía
+                                    meconlib
+-------------------------------------------------------------------------------
+This file is part of meconlib.
 
-#require_once 'PEAR.php';
+meconlib is free software; you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free
+Software Foundation; either version 2 of the License, or (at your option)
+any later version.
 
+meconlib is distributed in the hope that it will be useful, but WITHOUT
+ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
+FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
+You should have received a copy of the GNU General Public License; if not,
+write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
+Boston, MA  02111-1307  USA
+-------------------------------------------------------------------------------
+Creado: Mon Apr 14 16:23:22 2003
+Autor:  Martin Marrese <mmarre@mecon.gov.ar>
+-------------------------------------------------------------------------------
+$Id$
+-----------------------------------------------------------------------------*/
 
 // +X2C includes
 require_once 'MECON/Marco/Pagina.php';
@@ -38,14 +35,14 @@ require_once 'MECON/Marco/MenuHorizontal.php';
 require_once 'MECON/Marco/MenuVertical.php';
 require_once 'MECON/Marco/MenuOculto.php';
 
-
-// +X2C Class 16 :Seccion
+// +X2C Class 16 :MECON_Marco_Seccion
 /**
  * Clase seccion para el manejo de las secciones
  *
+ * @package MECON_Marco
  * @access public
  */
-class Seccion extends Pagina {
+class MECON_Marco_Seccion extends MECON_Marco_Pagina {
     /**
      * Nombre de la seccion.
      *
@@ -103,36 +100,23 @@ class Seccion extends Pagina {
      *
      * @return void
      * @access public
-     * @static
      */
-    function Seccion($seccion, $configuracion) // ~X2C
+    function MECON_Marco_Seccion($seccion, $configuracion) // ~X2C
     {
-        if (array_key_exists('nombre',$seccion)) { 
-            $this->_nombre = $seccion['nombre'];
+        $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']);
         }        
-        if (array_key_exists('imagenComun', $seccion))
-            $imgComun = $seccion['imagenComun'];
-        else 
-            unset($imgComun);
-        if (array_key_exists('imagenMouseOn', $seccion))
-            $imgMouseOn = $seccion['imagenMouseOn'];
-        else
-            unset($imgMouseOn);
-        if (array_key_exists('imagenSelect', $seccion))
-            $imgSelect = $seccion['imagenSelect'];
-        else
-            unset($imgSelect);
-        $this->_imagen = new ImagenAnimada($imgComun, $imgMouseOn, $imgSelect, $configuracion['directorios']['imagenes']);
-        
-        if (array_key_exists('tipoMenu', $seccion)) {
-            $this->_tipoMenu = $seccion['tipoMenu'];
-        }
+        $this->_imagen = new MECON_Marco_ImagenAnimada($imgComun, $imgMouseOn, $imgSelect,
+        $configuracion['directorios']['imagenes'], $this->_nombre,
+        $configuracion['directorios']['root'].'/'.$this->_link);
         if (!is_null($configuracion)) {
             $this->_configuracion = $configuracion;
         }
-        if (array_key_exists('link', $seccion)) {
-            parent::Pagina($seccion['link']);
-        }        
         if (array_key_exists('hijos', $seccion)) {
             $this->_cargarHijos($seccion['hijos']);
         }
@@ -150,25 +134,13 @@ class Seccion extends Pagina {
      */
     function toHtml($link_sel) // ~X2C
     {
-        if (isset($_SESSION['deshabilitar_links']) && $_SESSION['deshabilitar_links']) {
-            $link_start  = '';
-            $link_end    = '';
-            $link_start2 = '';
-        }
-        else {
-            $link_start  = '<a href="'.$this->_configuracion['directorios']['root'].'/'.$this->_link.'">';
-            $link_start2 = '<a href="'.$this->_configuracion['directorios']['root'].'/'.$this->_link.'" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_displayStatusMsg(\''.$this->_nombre.'\'); MM_swapImage(\''.$this->_nombre.'\',\'\',\''.$this->_imagen->_imgMouseOn.'\',1); return document.MM_returnValue" MM_swapImage(\''.$this->_nombre.'\',\'\',\''.$this->_imagen->_imgMouseOn.'\',1)>';
-            $link_end    = '</a>';
+        if (!$this->_configuracion['links']) {
+            $this->_imagen->setHabilitada(false);
         }
-
         if ($this->verifSeccionSeleccionada($link_sel)) {
-            $sec    = $link_start."<img name=\"".$this->_nombre."\" src=\"".$this->_imagen->_imgSelect."\" border=\"0\" alt=\"".$this->_nombre."\">".$link_end;
-        }
-        else {
-            $sec = $link_start2."<img name=\"".$this->_nombre."\" src=\"".$this->_imagen->_imgComun."\" border=\"0\" alt=\"".$this->_nombre."\">".$link_end;
+            $this->_imagen->setSeleccionada(true);
         }
-        
-        return $sec;
+        return $this->_imagen->toHtml();
     }
     // -X2C
 
@@ -184,13 +156,13 @@ class Seccion extends Pagina {
     function _cargarHijos($hijos) // ~X2C
     {
         if ($this->_tipoMenu == 'vertical'){
-            $tmp = new MenuVertical($this->_configuracion);
+            $tmp = new MECON_Marco_MenuVertical($this->_configuracion);
         }
         elseif ($this->_tipoMenu == 'horizontal') {
-            $tmp = new MenuHorizontal($this->_configuracion);
+            $tmp = new MECON_Marco_MenuHorizontal($this->_configuracion);
         }
         else {
-            $tmp = new MenuOculto($this->_configuracion);
+            $tmp = new MECON_Marco_MenuOculto($this->_configuracion);
         }
         foreach ($hijos as $hijo) {
             $tmp->agregarComponente($hijo);
@@ -260,7 +232,7 @@ Devuelve 1 si pertenece a la seccion, en caso contrario 0.
     {
         $style = "text-decoration:none";
         
-        if (isset($_SESSION['deshabilitar_links']) && $_SESSION['deshabilitar_links']) {
+        if (!$this->_configuracion['links']) {
             $link_start = '';
             $link_end   = '';
         }
@@ -292,6 +264,6 @@ Devuelve 1 si pertenece a la seccion, en caso contrario 0.
     }
     // -X2C
 
-} // -X2C Class :Seccion
+} // -X2C Class :MECON_Marco_Seccion
 
-?>
+?>
\ No newline at end of file