]> git.llucax.com Git - mecon/intranet.git/blobdiff - sistema/local_lib/HTML_Servicio.php
Se termina de acomodar el look&feel de sistemas.
[mecon/intranet.git] / sistema / local_lib / HTML_Servicio.php
index ea8977faee19cd98c5418bf0a20c463f9d8c0ea5..1386fe48772e7e617449d0d7d833ba03ac2c49b9 100644 (file)
 //
 
 
-require_once 'HTML/Image.php';
+require_once 'MECON/HTML/Image.php';
+require_once 'MECON/HTML/Link.php';
+require_once 'DB.php';
+require_once 'AI/Servicio.php';
+//  require_once 'AI/DB.php';
 
 // +X2C includes
 require_once 'HTML/Table.php';
@@ -54,7 +58,12 @@ class HTML_Servicio extends HTML_Table {
                                  'border'      => '0',
                                  'cellspacing' => '0',
                                  'cellpadding' => '0',
-                                 'bgcolor'     => '#FFFFFF'));
+                                 'bgcolor'     => '#FFFFFF',
+                                'class'       => 'servicio_tabla'));
+        $bd = DB::Connect('mysql://intranet:intranet@bal747f/intranet');//FIXME
+        $this->servicio = new AI_Servicio($seccion);
+        $this->servicio->cargar($bd);
+        $this->servicio->cargarHijos($bd);
     }
     // -X2C
 
@@ -65,32 +74,82 @@ class HTML_Servicio extends HTML_Table {
      */
     function toHTML() // ~X2C
     {
-        $this->addRow(array("Nombre(sin estilo)"),
+       if($this->servicio->link == '')
+           $this->servicio->link = 'servicios.php?servicios='.$this->servicio->servicio;
+        elseif($this->servicio->necesita_logueo)
+            $this->servicio->link = 'login.php?redirect='.$this->servicio->servicio;
+       $l = new MECON_HTML_Link($this->servicio->link, $this->servicio->nombre, array(),
+                            array('class' => 'servicio_titulo_tabla'));
+        $this->addRow(array('   '.$l->toHTML()),
                          array('align' => 'center',
                                'class' => 'arboltitulo',
                                'background'=>'images/servicio_cabecera.gif',
-                               'height'=>30));
-  $img = new HTML_Image('images/servicio_bullet.gif');
-  $int =& new HTML_Table(array('width'       =>'360',
-                               'border'      => '0',
-                               'cellspacing' => '0',
-                               'cellpadding' => '0',
-                               'bgcolor'     => '#FFFFFF'));
-  $int->addRow(array($img, 'Nombre(sin estilo)',$img,'nombre'),
-                          array('valign' => 'top'));
-  $int->updateColAttributes(0, array('width' => '10%',
-                    'background' => 'images/servicio_borde_sup_izq.gif'));
-  $int->updateColAttributes(1, array('width' => '40%',
-                    'background' => 'images/servicio_borde_sup_cen.gif'));
-  $int->updateColAttributes(2, array('width' => '10%',
-                    'background' => 'images/servicio_borde_sup_cen.gif'));
-  $int->updateColAttributes(3, array('width' => '40%',
-                    'background' => 'images/servicio_borde_sup_der.gif'));
-  $this->addRow(array($int));
-  $this->addRow(array($int));
-  $this->addRow(array($int));
-  $this->addRow(array(new HTML_Image('images/servicio_borde_inf.gif')));
-      return parent::toHTML();
+                               'height'=>30,
+                               'class' => 'servicio_titulo_tabla'));
+        $img = new MECON_HTML_Image('images/servicio_bullet.gif');
+        $int =& new HTML_Table(array('width'       =>'360',
+                                     'border'      => '0',
+                                     'cellspacing' => '0',
+                                     'cellpadding' => '0',
+                                     'bgcolor'     => '#FFFFFF'));
+        $int->addRow(array($img, '',$img,''),
+                               array());
+        $int->updateColAttributes(0, array('width' => '10%',
+                          'background' => 'images/servicio_borde_sup_izq.gif',
+                         'valign'     => 'top'));
+        $int->updateColAttributes(1, array('width' => '40%',
+                          'background' => 'images/servicio_borde_sup_cen.gif'));
+        $int->updateColAttributes(2, array('width' => '10%',
+                          'background' => 'images/servicio_borde_sup_cen.gif',
+                         'valign'     => 'top'));
+        $int->updateColAttributes(3, array('width' => '40%',
+                          'background' => 'images/servicio_borde_sup_der.gif'));
+       $par = false;
+        foreach($this->servicio->getHijos() as $s)
+       {
+           if($s->link == '')
+               $s->link = 'servicios.php?servicios='.$s->servicio;
+           elseif($s->necesita_logueo)
+               $s->link = 'login.php?redirect='.$s->servicio;
+            if($par)
+           {
+                $int->setCellContents(0, 3, new MECON_HTML_Link($s->link, $s->nombre,
+                                      array(), 
+                                       array('class' => 'servicio_tabla')));
+                $this->addRow(array($int));
+               $par = false;
+           }
+           else
+           {
+                $int->setCellContents(0, 1, new MECON_HTML_Link($s->link, $s->nombre,
+                                      array(), 
+                                       array('class' => 'servicio_tabla')));
+               $par = true;
+          }
+        }
+        if($par)
+        {
+            $int->setCellContents(0, 1, new MECON_HTML_Link($s->link, $s->nombre, 
+                                         array(), 
+                                          array('class' => 'servicio_tabla')));
+            $int->setCellContents(0, 2, '');
+            $int->setCellContents(0, 3, '');
+            $this->addRow(array($int));
+        }
+
+        $this->addRow(array(new MECON_HTML_Image('images/servicio_borde_inf.gif')));
+        return parent::toHTML();
+    }
+    // -X2C
+
+    // +X2C Operation 170
+    /**
+     * @return void
+     * @access public
+     */
+    function getCSS() // ~X2C
+    {
+        return "css/servicio.css";
     }
     // -X2C