menu déroulant generé par des boucles

Bonjour,
j’essaie de faire fonctionner un menu deroulant pour un site SPIP.

j’utilise le super javascript de Angus Turnbull http://gusnz.orcon.net.nz/dhtml/scripts/popup.html
allez voir c’est super bien fait!

si je veux faire le menu pour une hierarchie comme:

Root
|
|_Rub1
|
|_Rub2
|
|_SousRub1
|
|_SousRub2

je dois ecrire:

startMenu(‹ mRub ›); creation du premier niveau
addItem(‹ Rub1 ›, ‹ url Rub1 ›, ‹  ›); ajout dans le premier nouveau de l’option Rub1 avec lien vers la page rubrique.php3?id_rubrique=1
addItem(‹ Rub2 ›, ‹ appel sous_menu mRub2 › ); ajout de la seconde option avec lien vers le deuxieme niveau de sous menu.

startMenu('mRub2); creation du deuxieme niveau
addItem(‹ SousRub1 ›, ‹ url SousRub1 ›, ‹  ›); ajout dans le deuxieme niveau de l’option SousRub1 avec lien vers la page rubrique.php3?id_rubrique=3
addItem(‹ SousRub2 ›, ‹ url SousRub2 ›, ‹  ›); ajout dans le premier nouveau de l’option SousRub2 avec lien vers la page rubrique.php3?id_rubrique=4

pour chaque Rubrique je dois sortir:
-soit le lien vers la page d’affichage de la rubrique si pas de sous rubrique
-soit creer un sousmenu avec les noms des sous-rubrique correspondantes

la difficulté vient du fait que lorsque je parcours la boucle concernant une Rubrique je ne sais pas encore si la rubrique contient des sous-rubriques ou pas…

je pense que ca se fait avec la recursivité

Est ce que qqun à fait qqchose comme ca?
je plane, je rame ca fait 2000 essais que je fais et rien ne marche

Merci de votre aide!
Christophe