diff --git a/ecrire/public/balises.php b/ecrire/public/balises.php index d6074c1e1498b420749bf98d10a2295cc60dda56..39e8380ea5eca98e784970b989591b861b37bc9f 100644 --- a/ecrire/public/balises.php +++ b/ecrire/public/balises.php @@ -736,30 +736,31 @@ function balise_EXPOSE_dist($p) { **/ function calculer_balise_expose($p, $on, $off) { $b = $p->nom_boucle ? $p->nom_boucle : $p->id_boucle; - $key = $p->boucles[$b]->primary; - $type = $p->boucles[$p->id_boucle]->primary; - $desc = $p->boucles[$b]->show; - $connect = sql_quote($p->boucles[$b]->sql_serveur); - - if (!$key) { + if (empty($p->boucles[$b]->primary)) { $msg = array('zbug_champ_hors_boucle', array('champ' => '#EXPOSER')); erreur_squelette($msg, $p); - } + } else { - // Ne pas utiliser champ_sql, on jongle avec le nom boucle explicite - $c = index_pile($p->id_boucle, $type, $p->boucles); + $key = $p->boucles[$b]->primary; + $type = $p->boucles[$p->id_boucle]->primary; + $desc = $p->boucles[$b]->show; + $connect = sql_quote($p->boucles[$b]->sql_serveur); - 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'])) { - $parent = index_pile($p->id_boucle, 'id_groupe', $p->boucles, $b); - } else { - $parent = "''"; - } + // Ne pas utiliser champ_sql, on jongle avec le nom boucle explicite + $c = index_pile($p->id_boucle, $type, $p->boucles); - $p->code = "(calcul_exposer($c, '$type', \$Pile[0], $parent, '$key', $connect) ? $on : $off)"; + 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'])) { + $parent = index_pile($p->id_boucle, 'id_groupe', $p->boucles, $b); + } else { + $parent = "''"; + } + + $p->code = "(calcul_exposer($c, '$type', \$Pile[0], $parent, '$key', $connect) ? $on : $off)"; + } $p->interdire_scripts = false; diff --git a/ecrire/public/quete.php b/ecrire/public/quete.php index 793dd3ef7de86cd4cc2811e84ffa416ad7e56a51..c22e9b1ff5a9484ce9a927b1e7eb0b4dd2abe457 100644 --- a/ecrire/public/quete.php +++ b/ecrire/public/quete.php @@ -538,8 +538,6 @@ function vignette_logo_document($row, $connect = '') { * Calcul pour savoir si un objet est expose dans le contexte * fournit par $reference * - * http://code.spip.net/@calcul_exposer - * * @param int $id * @param string $prim * @param array $reference