]> git.llucax.com Git - mecon/meconlib.git/blob - lib/MECON/HTML/Arbol.php
0ba867ce717d4882672feb1697819637eeb5fe18
[mecon/meconlib.git] / lib / MECON / HTML / Arbol.php
1 <?php /* vim: set binary expandtab tabstop=4 shiftwidth=4 textwidth=80:
2 -------------------------------------------------------------------------------
3                              Ministerio de Economía
4                                     meconlib
5 -------------------------------------------------------------------------------
6 This file is part of meconlib.
7
8 meconlib is free software; you can redistribute it and/or modify it under
9 the terms of the GNU General Public License as published by the Free
10 Software Foundation; either version 2 of the License, or (at your option)
11 any later version.
12
13 meconlib is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
15 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16  
17 You should have received a copy of the GNU General Public License; if not,
18 write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330,
19 Boston, MA  02111-1307  USA
20 -------------------------------------------------------------------------------
21 Creado: jue jul 17 15:32:52 ART 2003
22 Autor:  Gonzalo Merayo <gmeray@mecon.gov.ar>
23 -------------------------------------------------------------------------------
24 $Id$
25 -----------------------------------------------------------------------------*/
26
27 require_once 'HTML/Table.php';
28 require_once 'HTML/Image.php';
29
30 class HTML_Arbol extends HTML_Table
31 {
32     var $t_interna;
33
34     function HTML_Arbol($dat, $titulo_str)
35     {
36         parent::HTML_Table(array ('width'=>'132',
37                                   'border'   => '0',
38                                   'cellspacing'   => '0',
39                                   'cellpadding'   => '0',
40                                   'bgcolor'   => '#003868'));
41         $this->t_interna = new HTML_Table(array ('width'=>'132',
42                                   'border'   => '0',
43                                   'cellspacing'   => '2',
44                                   'cellpadding'   => '0',
45                                   'class'   => 'bodytext'));
46         $titulo = new HTML_Table(array('width'=>'132',
47                                        'height'=>'26',
48                                        'border' => '0',
49                                        'cellspacing' => '0',
50                                          'cellpadding' => '0',
51                                          'align'=>'center',
52                  'background'=>'/MECON/images/arbol_titulo.gif'));
53         $titulo->addRow(array($titulo_str), array('align'=>'center',
54                                                   'class'=>'arboltitulo'));
55         $this->addRow(array($titulo), array('bgcolor' => '#FFFFFF'));
56         $this->expandir($dat, 0);
57     }
58     
59     function expandir($dat, $n)
60     {
61         $imagen = '';
62         $bullets = array('',
63                          '/MECON/images/arbol_bullet_1.gif',
64                          '/MECON/images/arbol_bullet_2.gif',
65                          '/MECON/images/arbol_bullet_3.gif');
66         $tabulados = array(0, 7, 13, 20);
67         $classes = array('menu', 'menu1', 'menu1', 'menu2');
68         
69         $atr = array('border' => '0',
70                      'width'  => $tabulados[$n],
71                      'height' => '10');
72         $imagen =& new HTML_Image($bullets[$n], 'bullet', $atr);
73         foreach($dat as $e)
74         {
75             $e['titulo'] = $imagen->toHTML().$e['titulo'];
76             if(isset($e['activado']) && $e['activado'] != 0) $class = 'menu_activo';
77             else $class = $classes[$n];
78             if(!is_null($e['link']))
79               $e['titulo'] = '<a href="'.$e['link'].'" class="'.$class.'">'.$e['titulo'].'</a>';
80             $this->t_interna->addRow(array($e['titulo']), array('class' => $class));
81             if(isset($e['sub']))
82               $this->expandir($e['sub'], $n+1);
83         }
84     }
85
86     function toHTML()
87     {
88         echo '<link rel="stylesheet" href="/MECON/css/arbol.css">';
89         $this->addRow(array($this->t_interna->toHTML()));
90         return parent::toHTML();
91     }
92 };
93
94 ?>