Skip to content

Instantly share code, notes, and snippets.

@jjmc
Created September 15, 2011 12:39
Show Gist options
  • Save jjmc/1219134 to your computer and use it in GitHub Desktop.
Save jjmc/1219134 to your computer and use it in GitHub Desktop.
listar la jerarquía de nodos de una BD mysql
<ul style="list-style-type:none" id="nodo">
{* Se asigna el valor inicial a la variable profundidad en el arbol "dep" que se utiliza para pintar el arbol
y en concreto cuando son varios hijos solo tenemos el valor de la profundidad *}
{assign var = dep value = 1}
{* Se inicia el bucle que muestra todas las filas de la consuta empezando a 1 y evitar mostra el primer nodo *}
{section loop=$lista name=lis start=1}
{* El nivel se utiliza para poder determinar si el nodo es padre de otros nodos *}
{assign var=nivel value=$lista[lis].izq+1}
{if $dep == $lista[lis].dep}
<li class="lista">
{if $lista[lis].izq == $lista[lis].der-1}
<img src="icon/nodo.png" class="imagen"/>{$lista[lis].alias}
{include file="p1112admin/nodo_acciones.tpl"}
</li>
{else}
<a href="javascript:void(0)" onclick="javascript:expandir('nodo_{$nivel}')" style="text-decoration:none">
<img src="icon/folder_close.png" class="imagen" name="nodo_{$nivel}"/>{$lista[lis].alias}</a>
{include file="p1112admin/nodo_acciones.tpl"}
{/if}
{/if}
{if $dep < $lista[lis].dep}
<ul id="nodo_{$lista[lis].izq}" style="list-style-type:none;display:none">
<li class="lista">
{if $lista[lis].izq == $lista[lis].der-1}
<img src="icon/nodo.png" class="imagen"/>{$lista[lis].alias}
{include file="p1112admin/nodo_acciones.tpl"}
</li>
{else}
<a href="javascript:void(0)" onclick="javascript:expandir('nodo_{$nivel}')" style="text-decoration:none">
<img src="icon/folder_close.png" class="imagen" name="nodo_{$nivel}"/>{$lista[lis].alias}</a>
{include file="p1112admin/nodo_acciones.tpl"}
{/if}
{/if}
{if $dep > $lista[lis].dep}
{section name=deep loop=$dep-$lista[lis].dep}
</ul></li>
{/section}
<li class="lista">
{if $lista[lis].izq == $lista[lis].der-1}
<img src="icon/nodo.png" class="imagen"/>{$lista[lis].alias}
{include file="p1112admin/nodo_acciones.tpl"}
</li>
{else}
<a href="javascript:void(0)" onclick="javascript:expandir('nodo_{$nivel}')" style="text-decoration:none">
<img src="icon/folder_close.png" class="imagen" name="nodo_{$nivel}"/>{$lista[lis].id}-{$lista[lis].alias}</a>
{include file="p1112admin/nodo_acciones.tpl"}
{/if}
{/if}
{assign var=dep value=$lista[lis].dep}
{/section}
</ul>
{*para cerrar los ultimos anidamientos de </li> y </ul> fila de datos*}
{section name = last_deep loop = $dep-1}
</li></ul>
{/section}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment