]> git.llucax.com Git - mecon/meconlib.git/commitdiff
Se agrega un toString() (porque fue gratis experimentando con una mejor presentacion...
authorMartín Marrese <marrese@gmail.com>
Fri, 25 Jul 2003 21:19:51 +0000 (21:19 +0000)
committerMartín Marrese <marrese@gmail.com>
Fri, 25 Jul 2003 21:19:51 +0000 (21:19 +0000)
Se arreglan los ejemplos.

lib/MECON/HTML/Arbol.php
test/HTML/arbol.php
test/HTML/arboldb.php

index 5ba8f0a62e2344f3e75b0688beb6057157150086..d86c49e8bf5181ee7ebf56621850fe1e6770d06b 100644 (file)
@@ -156,6 +156,36 @@ class HTML_Arbol extends HTML_Table
         return $this->expandirArray($this->datos, 0, $filtrarActivos);
     }
 
+    function expandirString($dat, $n, $filtrarActivos)
+    {
+        $str = '';
+        $tot = count($dat);
+        for ($i = 0; $i < $tot; $i++) {
+            $e = $dat[$i];
+            // Si no tiene ID o esta activo y se filtran los activos, se
+            // continua con el proximo item.
+            if (!@$e['id'] or $filtrarActivos and @$e['activo']) {
+                continue;
+            }
+            $indent = str_repeat('|  ', $n);
+            if ($i == ($tot - 1)) {
+                $indent .= '`- ';
+            } else {
+                $indent .= '|- ';
+            }
+            $str .= $indent . $e['titulo'] . "\n";
+            if(@$e['sub']) {
+                $str .= $this->expandirString($e['sub'], $n + 1, $filtrarActivos);
+            }
+        }
+        return $str;
+    }
+
+    function toString($filtrarActivos = true)
+    {
+        return $this->expandirString($this->datos, 0, $filtrarActivos);
+    }
+
     /**
      * Activa un nodo del árbol.
      *
index 6c9c9b997408e056e989d58a14c29ce67c217bf1..b0fc229ce213ed614ec69ca6776bfc16cf496d62 100644 (file)
@@ -48,7 +48,7 @@ $dat = array( // Datos {{{
                         'link' => 'blabla',
                         'id' => 9,
                         'sub' => array(//sub2 {{{
-                            5 => array(
+                            array(
                                 'titulo' => 'Nivel4',
                                 'link' => 'blabla',
                                 'id' => 8,
@@ -100,12 +100,15 @@ foreach ($arbol->toArray(true) as $id => $val) {
     echo '<OPTION value="'.$id.'">'.$val.'</OPTION>';
 }
 echo '</SELECT>';
-$arbol->setActivado(16);
+$arbol->setActivo(16);
 echo $arbol->toHTML();
 echo '<SELECT name="id">';
 foreach ($arbol->toArray() as $id => $val) {
     echo '<OPTION value="'.$id.'">'.$val.'</OPTION>';
 }
 echo '</SELECT>';
+echo "<PRE>Raiz\n";
+echo $arbol->toString();
+echo '</PRE>';
 
 ?>
index 30e7e02b80aa8fcc77d9c9dcbd0e6654ce7c66b8..66d72f579c84cf64f82509474ba5db59b0a15e7f 100644 (file)
@@ -36,6 +36,7 @@ $dbdata = array(
     'db' => &$db,
     'tabla' => 'grupo_secciones',
     'id' => 'grupo',
+    'id_activo' => '7',
     'nombre' => 'nombre',
     'id_padre' => 'grupo_padre',
 );
@@ -53,7 +54,7 @@ foreach ($arbol->toArray(true) as $id => $val) {
     echo '<OPTION value="'.$id.'">'.$val.'</OPTION>';
 }
 echo '</SELECT>';
-var_dump($arbol->setActivado(34));
+var_dump($arbol->setActivo(34));
 echo $arbol->toHTML();
 echo '<SELECT name="id">';
 foreach ($arbol->toArray() as $id => $val) {