]> git.llucax.com Git - mecon/meconlib.git/blob - HTML/php/Tabla.php
- Todas las funciones que estaban se pasan a deprecated
[mecon/meconlib.git] / HTML / php / Tabla.php
1 <?php
2 // vim: set expandtab tabstop=4 softtabstop=4 shiftwidth=4:
3 // +--------------------------------------------------------------------+
4 // |                          HTML - TABLE                              |
5 // +--------------------------------------------------------------------+
6 // |   Libreria para la estandarizacion de los elementos html de los    |
7 // |                         de la Intranet                             |
8 // |                      Ministerio de Economía                        |
9 // +--------------------------------------------------------------------+
10 // | Creado: fri mar 21 ART 2003                                        |
11 // | Autor:  Martin Marrese <mmarre@mecon.gov.ar>                       |
12 // +--------------------------------------------------------------------+
13 // 
14 // $Id$
15 // 
16 // $URL$
17 // $Rev$
18 // $Date$
19 // $Author$
20
21 require_once 'HTML/Table.php';
22
23 /**
24 * Manejo de tablas.
25 *
26 * Libreria para le manejo de las tablas de los sistemas de intranet.
27 *
28 * @version $Rev$
29 * @author  $Author$
30 */
31
32 class Tabla extends HTML_Table {
33     
34     /**
35     * Valores de Configuracion particular
36     *
37     * @var array
38     */
39     var $_conf;
40     
41     /**
42     * Objeto tabla que voy a utilizar
43     *
44     * @var Object HTML_Table
45     */
46     var $_tabla;
47
48     /**
49      * Atributos de las tablas.
50      *
51      * @var array
52      */
53     var $_atribTabla;
54     
55     /**
56     * Constructor. 
57     *
58     * Puede recibir como parametro un string con los atributos que se 
59     * quieren dar a la tabla en cuestion. Estos atributos estan
60     * seteados por default segun el archivo de configuracion.
61     *
62     * @param $atributos Atributos diferentes a los estandares para la
63     * tabla
64     * 
65     * @access public
66     */
67     function Tabla ($atributos = '') 
68     {
69         $this->_conf = include 'Tabla/conf_Tabla.php'; // Obtengo los valores particulares de configuracion
70         // Seteo los atributos para la tabla
71         $this->_atribTabla = $this->_parseAttributes($this->_conf['atributos']['tabla_comun']);
72         //Genero el objeto HTML_Table
73         if ($atributos != '') {
74             $tmp = $this->_parseAttributes($atributos);
75             if (isset($tmp['width'])) {
76                 $this->_atribTabla['width'] = $tmp['width'];
77             }
78             if (isset($tmp['bgcolor'])) {
79                 $this->_atribTabla['bgcolor'] = $tmp['bgcolor'];
80             }
81             if (isset($tmp['cellspacing'])) {
82                 $this->_atribTabla['cellspacing']  = $tmp['cellspacing'];
83             }            
84             if (isset($tmp['cellpadding'])) {
85                 $this->_atribTabla['cellpadding']  = $tmp['cellpadding'];
86             }            
87         }        
88         $this->HTML_Table($this->_atribTabla);
89         //Modifico los atributos de todas las tablas
90         //Hay que encontrar o hacer una funcion que setee los atributos para las futuras
91         //inserciones.
92     }    
93
94
95     /**                 
96     * Agrega una fila del tipo Cabecera
97     *
98     * Agrega una fila del tipo cabecera, tomando colores y demas del  
99     * archivo de configuracion. Recibe como parametro un array con 
100     * los datos a incluir en la linea. Agrega tantas columnas como
101     * elementos tenga el array. Si no recibe parametro alguno, 
102     * inserta una fila en blanco. Devuelve el identificador de la
103     * fila en donde inserto los datos.
104     *
105     * @param $contenido Contenido de la fila
106     *
107     * @return int Identificador de Linea
108     * 
109     * @access public
110     * @deprecated
111     */
112     function agregarFilaCabecera ($contenido = '', $atributos = '')
113     {
114         return $this->addRow($contenido, $this->_conf['atributos']['celda_cabecera'],'TH');
115     }
116
117     /**                 
118     * Agrega una fila del tipo Comun
119     *
120     * Agrega una fila del tipo comun, tomando colores y demas del  
121     * archivo de configuracion. Recibe como parametro un array con 
122     * los datos a incluir en la linea. Agrega tantas columnas como
123     * elementos tenga el array. Si no recibe parametro alguno, 
124     * inserta una fila en blanco. Devuelve el identificador de la
125     * fila en donde inserto los datos.
126     *
127     * @param $contenido Contenido de la fila
128     *
129     * @return int Identificador de Linea
130     * 
131     * @access public
132     * @deprecated
133     */
134     function agregarFila ($contenido = '')
135     {
136         return $this->addRow($contenido,$this->_conf['atributos']['celda_comun']);
137     }
138
139
140     /**                 
141     * Modifica el atributo rowSpan a la celda pasada por parametro
142     *
143     * @param int $fila
144     * @param int $columna
145     * @param int $valor
146     * 
147     * @access public
148     * @deprecated
149     */
150     function rowSpan ($fila, $columna, $valor)
151     {
152         return $this->updateCellAttributes($fila, $columna, 'rowspan='.$valor);
153     }
154
155     /**                 
156     * Modifica el atributo colSpan a la celda pasada por parametro
157     *
158     * @param int $fila
159     * @param int $columna
160     * @param int $valor
161     * 
162     * @access public
163     * @deprecated
164     */
165     function colSpan ($fila, $columna, $valor)
166     {
167         return $this->updateCellAttributes($fila, $columna, 'colspan='.$valor);
168     }
169
170     /**                 
171     * Modifica el atributo aling de la celda pasada por parametro
172     *
173     * @param int $fila
174     * @param int $columna
175     * @param string $valor (left, center, right...)
176     * 
177     * @access public
178     * @deprecated
179     */
180     function align ($fila, $columna, $valor)
181     {
182         return $this->updateCellAttributes($fila, $columna, 'align="'.$valor.'"');
183     }
184
185     /**                 
186     * Setea una columna como del tipo cabecera    
187     *
188     * @param int $columna
189     * 
190     * @access public
191     * @deprecated
192     */
193     function setColCabecera ($columna)
194     {
195         return $this->updateColAttributes($columna,$this->_conf['atributos']['celda_cabecera']);
196     }
197
198     /**                 
199     * Setea una columna como del tipo titulo
200     *
201     * @param int $columna
202     * 
203     * @access public
204     * @deprecated
205     */
206     function setColTitulo ($columna)
207     {
208         return $this->updateColAttributes($columna,$this->_conf['atributos']['celda_titulo']);
209     }
210  
211  /**                 
212     * Alinea una columna entera  
213     *
214     * @param int $columna
215     * @param string $valor
216     * 
217     * @access public
218     * @deprecated
219     */
220     function setColAlign ($columna, $valor)
221     {
222         return $this->updateColAttributes($columna,'align="'.$valor.'"');
223     }
224
225     /**                 
226     * Cambia el tamanio de una columna entera  
227     *
228     * @param int $columna
229     * @param string $valor
230     * 
231     * @access public
232     * @deprecated
233     */
234     function setColWidth ($columna, $valor)
235     {
236         return $this->updateColAttributes($columna,'width="'.$valor.'"');
237     }
238
239     /**                 
240     * Cambia el color de fondo de una celda  
241     *
242     * @param int $fila
243     * @param int $columna
244     * @param string $valor
245     * 
246     * @access public
247     * @deprecated
248     */
249     function setCellBgcolor ($fila, $columna, $valor)
250     {
251         return $this->updateCellAttributes($fila, $columna,'bgcolor="'.$valor.'"');
252     }
253
254     /**                 
255     * Devuelve el html de la tabla
256     *
257     * Devuelve el html de la tabla para que sea mostrado.
258     * Como parametro recibe el indicador de tabla simple.
259     * Si doble es 0, devuelve el html comun y corriente, si es
260     * distinto de 0 devuelve una tabla sola
261     *
262     * @param int $doble
263     *
264     * @return string Html
265     * 
266     * @access public
267     */
268     function toHtml ($doble = 0)
269     {
270         // Agregar la tabla de fondo.
271         if ($doble == 0 ) {
272             $tmp = $this->_parseAttributes($this->_conf['atributos']['tabla_contenedora']);
273             $tmp['width'] = $this->_atribTabla['width'];
274             $tabla_externa =  new HTML_Table($tmp);
275             $tabla_externa->setCellContents(0,0,parent::toHtml(),$this->_conf['atributos']['celda_comun']);
276             $result = $tabla_externa->toHtml();    
277         }
278         else {
279             $result = parent::toHtml();
280         }
281
282         return $result;
283     }
284
285     /**
286     * Funcion que establece los atributos de una columna
287     *
288     * @param int $col
289     * @param string $attr
290     * 
291     * @access public
292     */
293     function setColAttributes ($col, $attr) 
294     {
295
296     }
297     
298     /**
299     * Funcion que establece los atributos de una fila
300     *
301     * @param int $row
302     * @param string $attr
303     * 
304     * @access public
305     */
306     function setRowAttributes ($row, $attr) 
307     {
308     
309     }
310     
311     /**
312     * Funcion que establece los atributos de una celda
313     *
314     * @param int $row
315     * @param int $col
316     * @param string $attr
317     *
318     * @access public
319     */
320     function setCellAttributes ($row, $col, $attr) 
321     {
322     
323     }
324
325     /**
326     * Funcion que agrega una fila
327     *
328     * @param array $content
329     * @param string $attr
330     *
331     * @return int $rowId
332     *
333     * @access public
334     */
335     function addRow ($content, $attr = null)
336     {
337         
338         $this->addRow
339         return $rowId
340     }
341     
342     /**
343     * Funcion que agrega contenido a una celda
344     *
345     * @param int $row
346     * @param int $col
347     * @param array $content
348     * @param string $attr
349     *
350     * @access public
351     */
352     function setCellContents ($row, $col, $content, $attr = null)
353     {
354
355     }
356
357 }  
358 ?>