diff --git a/ecrire/public/balises.php b/ecrire/public/balises.php index bb233eba6011fe175ba41b0d556f31e96f490d40..fde4e6084b35a452c78757b61b64aa2b2e54f60a 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 a611078063eeb3e9d1bb63011ee9584702669cc7..9f7db2da019bd86fc852b9ba4133c8d0618e1d0c 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; }