From b629d01539d425f76b363434796961bd36ca15cb Mon Sep 17 00:00:00 2001 From: "Committo,Ergo:sum" <esj@rezo.net> Date: Wed, 3 Oct 2007 15:50:38 +0000 Subject: [PATCH] =?UTF-8?q?Suite=20de=20[10485]:=20la=20hierarchie=20de=20?= =?UTF-8?q?id=5Frubrique=20c'est=20id=5Fparent,=20et=20il=20n'est=20pas=20?= =?UTF-8?q?toujours=20dans=20les=20requ=C3=AAtes=20SQL=20compil=C3=A9es.?= =?UTF-8?q?=20(Pierre=20Fiches).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecrire/public/balises.php | 6 ++++-- ecrire/public/composer.php | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/ecrire/public/balises.php b/ecrire/public/balises.php index bb233eba60..fde4e6084b 100644 --- a/ecrire/public/balises.php +++ b/ecrire/public/balises.php @@ -303,9 +303,11 @@ function calculer_balise_expose($p, $on, $off) // Ne pas utiliser champ_sql, on jongle avec le nom boucle explicite $c = index_pile($p->id_boucle, $type, $p->boucles); - if (isset($desc['field']['id_rubrique'])) { + if (isset($desc['field']['id_parent'])) { + $parent = 0; // pour if (!$parent) dans calculer_expose + } elseif (isset($desc['field']['id_rubrique'])) { $parent = index_pile($p->id_boucle, 'id_rubrique', $p->boucles, $b); - } elseif (isset($desc['field']['id_groupe'])) { + } elseif (isset($desc['field']['id_groupe'])) { $parent = index_pile($p->id_boucle, 'id_groupe', $p->boucles, $b); } else $parent = "''"; diff --git a/ecrire/public/composer.php b/ecrire/public/composer.php index a611078063..9f7db2da01 100644 --- a/ecrire/public/composer.php +++ b/ecrire/public/composer.php @@ -295,7 +295,7 @@ function calculer_hierarchie($id_rubrique, $exclure_feuille = false) { // http://doc.spip.org/@calcul_exposer function calcul_exposer ($id, $prim, $reference, $parent, $type) { static $exposer; - static $ref_precedente; + static $ref_precedente =-1; // Que faut-il exposer ? Tous les elements de $reference // ainsi que leur hierarchie ; on ne fait donc ce calcul @@ -309,6 +309,7 @@ function calcul_exposer ($id, $prim, $reference, $parent, $type) { if ($type == 'id_mot') $exposer['id_groupe'][$parent] = true; if ($type != 'id_groupe') { + if (!$parent) $parent = $principal; $a = split(',',calculer_hierarchie($parent)); foreach($a as $n) $exposer['id_rubrique'][$n] = true; } -- GitLab