diff --git a/ecrire/public/composer.php b/ecrire/public/composer.php index c25341f0b6dfa9c3362b26dbc96f769f936e54b5..a9722202c2303e976551cef6e9b2724693e46f38 100644 --- a/ecrire/public/composer.php +++ b/ecrire/public/composer.php @@ -267,14 +267,18 @@ function calculer_hierarchie($id_rubrique, $exclure_feuille = false) { if (!$id_rubrique = intval($id_rubrique)) return '0'; - $hierarchie = ",$id_rubrique"; + $hierarchie = array(); - do { - $id_rubrique = sql_parent($id_rubrique); - $hierarchie = "," . $id_rubrique . $hierarchie; - } while ($id_rubrique); + if (!$exclure_feuille) + $hierarchie[] = $id_rubrique; - return substr($hierarchie,1); + while ($id_rubrique = sql_parent($id_rubrique)) + array_unshift($hierarchie, $id_rubrique); + + if (count($hierarchie)) + return join(',', $hierarchie); + else + return '0'; }