Valider 52c8368e rédigé par marcimat's avatar marcimat
Parcourir les fichiers

Décidément, revert de r20267, qui était un mauvais fichier !

+ Fermer #2916 et #2952 : la boucle Hiérarchie ne doit pas empêcher de traiter les critères autres que ce qui la concerne directement (id_x et id_rubrique).
parent d059ffdc
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+0 −6
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -1068,13 +1068,7 @@ function public_compiler_dist($squelette, $nom, $gram, $sourcefile, $connect='')

	$squelette = $f($squelette, '', $boucles, $descr);

if (_request('var_test') == 'echo') {
	echo "\n<pre>"; print_r($squelette); echo "</pre>";
	echo "<hr />";
	echo "\n<pre>"; print_r($boucles); echo "</pre>";
}
	$boucles = compiler_squelette($squelette, $boucles, $nom, $descr, $sourcefile, $connect);
#echo "\n<pre>"; print_r($boucles); echo "</pre>";

	// restituer les echappements
	if ($esc)
+10 −4
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -554,10 +554,15 @@ function phraser_criteres($params, &$result) {
				elseif ($param == 'plat') 
					$result->modificateur['plat'] = true;

				// Boucle hierarchie, analyser le critere id_rubrique ou non
				// afin, dans les cas autres que {id_rubrique}, de
				// forcer {tout} pour avoir la rubrique mere...
				elseif (strcasecmp($type, 'hierarchie')==0 AND !preg_match(",^id_rubrique\b,",$param)) {
				// Boucle hierarchie, analyser le critere id_rubrique
				// et les autres critères {id_x} pour forcer {tout} sur
				// ceux-ci pour avoir la rubrique mere...
				// Les autres critères de la boucle hierarchie doivent être
				// traités normalement.
				elseif (strcasecmp($type, 'hierarchie')==0
					AND !preg_match(",^id_rubrique\b,",$param)
					AND preg_match(",^id_\w+\s*$,", $param))
				{
					$result->modificateur['tout'] = true;
				}
				elseif (strcasecmp($type, 'hierarchie')==0 AND $param=="id_rubrique") {
@@ -626,6 +631,7 @@ function phraser_criteres($params, &$result) {
			}
		}
	}

	// les doublons non nies doivent etre le dernier critere
	// pour que la variable $doublon_index ait la bonne valeur
	// cf critere_doublon