Skip to content
Extraits de code Groupes Projets
Valider 3e43e548 rédigé par esj's avatar esj
Parcourir les fichiers

Boucle vide et recherche: appeler quand même le serveur ! (Jean-Luc Béchennec)

parent a189a2cd
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -26,7 +26,6 @@ function maj_base() { ...@@ -26,7 +26,6 @@ function maj_base() {
$result = spip_query("SELECT valeur FROM spip_meta WHERE nom='version_installee'"); $result = spip_query("SELECT valeur FROM spip_meta WHERE nom='version_installee'");
if ($result) if ($row = spip_fetch_array($result)) $version_installee = (double) $row['valeur']; if ($result) if ($row = spip_fetch_array($result)) $version_installee = (double) $row['valeur'];
echo "'$version_installee' '$spip_version'";
// //
// Si pas de version mentionnee dans spip_meta, c'est qu'il s'agit // Si pas de version mentionnee dans spip_meta, c'est qu'il s'agit
// d'une nouvelle installation // d'une nouvelle installation
......
...@@ -233,6 +233,13 @@ function calculer_boucle($id_boucle, &$boucles) { ...@@ -233,6 +233,13 @@ function calculer_boucle($id_boucle, &$boucles) {
if ($boucle->mode_partie) if ($boucle->mode_partie)
$corps .= "\n }\n"; $corps .= "\n }\n";
$texte = '';
// Gestion de la hierarchie (voir inc-boucles.php3)
if ($boucle->hierarchie)
$texte .= "\n ".$boucle->hierarchie;
// si le corps est une constante, ne pas appeler le serveur N fois! // si le corps est une constante, ne pas appeler le serveur N fois!
if (ereg("^\(?'[^']*'\)?$",$corps)) { if (ereg("^\(?'[^']*'\)?$",$corps)) {
// vide ? // vide ?
...@@ -246,20 +253,8 @@ function calculer_boucle($id_boucle, &$boucles) { ...@@ -246,20 +253,8 @@ function calculer_boucle($id_boucle, &$boucles) {
$corps = "\n ".'for($x=$Numrows["'.$id_boucle.'"];$x>0;$x--) $corps = "\n ".'for($x=$Numrows["'.$id_boucle.'"];$x>0;$x--)
$t0 .= ' . $corps .';'; $t0 .= ' . $corps .';';
} }
$texte = '';
} else { } else {
// Gestion de la hierarchie (voir inc-boucles.php3)
if ($boucle->hierarchie)
$texte .= "\n ".$boucle->hierarchie;
// Recherche : recuperer les hash a partir de la chaine de recherche
if ($boucle->hash) {
$texte .= '
// RECHERCHE
list($rech_select, $rech_where) = prepare_recherche($GLOBALS["recherche"], "'.$boucle->primary.'", "'.$boucle->id_table.'");';
}
$corps = ' $corps = '
// RESULTATS // RESULTATS
...@@ -278,20 +273,23 @@ function calculer_boucle($id_boucle, &$boucles) { ...@@ -278,20 +273,23 @@ function calculer_boucle($id_boucle, &$boucles) {
// //
// Requete // Requete
// //
$init = "\n\n // REQUETE\n ";
// hack critere recherche : ignorer la requete en cas de hash vide // hack critere recherche : ignorer la requete en cas de hash vide
if ($boucle->hash) // Recherche : recuperer les hash a partir de la chaine de recherche
$init .= "if (\$rech_select) "; if ($boucle->hash) {
$init = '
$init .= "\$result = "; // RECHERCHE
list($rech_select, $rech_where) = prepare_recherche($GLOBALS["recherche"], "'.$boucle->primary.'", "'.$boucle->id_table.'");
if ($rech_select) ';
}
// En absence de champ c'est un decompte : else $init = '';
// on prend la primary pour avoir qqch
// car le COUNT incompatible avec le cas general
$init .= "spip_abstract_select(\n\t\tarray(\"". $init .= "\n\n // REQUETE
\$result = spip_abstract_select(\n\t\tarray(\"".
# En absence de champ c'est un decompte :
# prendre la primary pour avoir qqch
# (COUNT incompatible avec le cas general
(($boucle->select) ? (($boucle->select) ?
join("\",\n\t\t\"", array_unique($boucle->select)) : join("\",\n\t\t\"", array_unique($boucle->select)) :
$id_field) . $id_field) .
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter