Valider fd7bef1b rédigé par esj's avatar esj
Parcourir les fichiers

Gestion propre de #POINTS

parent 3d001dde
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+2 −2
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -34,12 +34,12 @@ function index_pile($idb, $nom_champ, &$boucles)
    $t = $table_des_tables[$r];
    if (!$t) $t = $r; // pour les tables non Spip
    // $t est le nom PHP de cette table 
    spip_log("'$idb' '$r' '$c' '$nom_champ'");
#    spip_log("'$idb' '$r' '$c' '$nom_champ'");
    $x = $tables_principales[$t];
    if (!$x) 
    {
      include_local("inc-debug-squel.php3");
      erreur_squelette("Table SQL absente de \$tables_principales dans inc_serialbase", $r, $idb);
      erreur_squelette(_L("Table SQL absente de \$tables_principales dans inc_serialbase"), $r, $idb);
    }

    $a = $x['field'];
+31 −4
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -140,6 +140,37 @@ function calculer_champ_divers($fonctions, $nom_champ, $id_boucle, &$boucles, $i
#	spip_log("TOTAL_BOUCLE: $id_boucle dans $id_mere");
		break;

  case 'POINTS':
	  $n = 0;
	  $b = $id_boucle;
	  $code = '';
	  while ($b != '')
	    {
	      if ($s = 	$boucles[$b]->param)
		{
		  foreach($s as $v)
		    {
		      if (strpos($v,'recherche') !== false)
			{
			  $code = '$PileROW[$SP' . (($n==0) ? "" : "-$n") .
			    '][points]';
			  $b = '';
			  break;
			}
		      }
		}

	      $n++;
	      $b = $boucles[$b]->id_parent;
	    }
	  if (!$code) 
	    {
	      include_local("inc-debug-squel.php3");
	      erreur_squelette(_L("Champ #POINTS hors d'une recherche"), '', $idb);
	    }

		break;

  case 'POPULARITE_ABSOLUE':
		$code = 'ceil(' .
		  index_pile($id_boucle,  "popularite", $boucles) .
@@ -272,10 +303,6 @@ function calculer_champ_divers($fonctions, $nom_champ, $id_boucle, &$boucles, $i
    return calculer_champ_LOGO($fonctions, $nom_champ, $id_boucle, $boucles, $id_mere);
    break; 

case 'POINTS':
	$code = '$PileRow[$SP]["points"]';
	break;

  default:
	  // champ inconnu. Il s'auto-de'note.
	    $code = "'#$nom_champ'";