]> git.llucax.com Git - mecon/meconlib.git/blob - lib/MECON/HTML/Arbol/ArbolDB.php
BugFixes a la primera version de addMenuVertical de Marco
[mecon/meconlib.git] / lib / MECON / HTML / Arbol / ArbolDB.php
1 <?
2
3 require_once 'MECON/HTML/Arbol.php';
4 require_once 'DB.php';
5
6
7
8 class HTML_ArbolDB extends HTML_Arbol
9 {
10         var $padre = null;
11         var $tabla;
12         var $nombre;
13         var $id;
14         var $link = null;
15         var $prepend_link = null;
16         var $db;
17     
18     function HTML_ArbolDB($dbdata, $imagen)
19     {
20         if(isset($dbdata['id_padre']))
21           $this->padre = $dbdata['id_padre'];
22         $this->tabla = $dbdata['tabla'];
23         $this->nombre = $dbdata['nombre'];
24         $this->id = $dbdata['id'];
25         if(isset($dbdata['prepend_link']))
26           $this->prepend_link = $dbdata['prepend_link']; 
27         if(isset($dbdata['link']))
28           $this->link = $dbdata['link']; 
29         $this->db = $dbdata['db']; 
30         $dat = $this->BuscarHijos(0);
31         parent::HTML_Arbol($dat, $imagen);
32     }
33   
34     function BuscarHijos($id)
35     {
36         $sql = "SELECT $this->nombre, $this->id ";
37         if(!is_null($this->link))
38         $sql .=  ", $this->link ";
39         $sql .=  "FROM $this->tabla ";
40         if(!is_null($this->padre))
41           $sql .= "WHERE $this->padre = '$id'";
42         $result = $this->db->query($sql);
43         if(DB::isError($result))
44           die($result->getMessage());
45         $dat = array();
46         while($row = $result->fetchRow())
47         {
48             $titulo = $row[0];
49             $id = $row[1];
50             if(is_null($this->padre)) $sub = array();
51             else $sub = $this->BuscarHijos($id);
52             if(!is_null($this->link))  $link = $this->prepend_link.$row[2];
53             else $link = $this->prepend_link.$id;
54             $dat[] = array(
55                 'titulo'=> $titulo,
56                 'link' => $link,
57                 'sub' => $sub 
58             );
59         }
60         return $dat;
61
62     }
63
64 }
65 ?>