Skip to content
Extraits de code Groupes Projets
Valider d410dc93 rédigé par JamesRezo's avatar JamesRezo :tada:
Parcourir les fichiers

balise #TOTAL_UNIQUE qui donne le nombre d'éléments affichés effectivement via...

balise #TOTAL_UNIQUE qui donne le nombre d'éléments affichés effectivement via le filtre |unique. C'est 'famille'-compatible :) (comprendre que le paramètre du filtre fonctionne évidement avec la balise.)

Voilà, y a peut-être d'autres trucs à faire autour de ça, on en discute sur spip-dev si vous avez des idées.
parent 30353bdd
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -1074,14 +1074,17 @@ function extraire_multi ($letexte) {
//
// Ce filtre retourne la donnee si c'est la premiere fois qu'il la voit ;
// possibilite de gerer differentes "familles" de donnees |unique{famille}
# |unique{famille,1} affiche le nombre d'elements affiches (preferer toutefois #TOTAL_UNIQUE)
# ameliorations possibles :
# 1) si la donnee est grosse, mettre son md5 comme cle
# 2) purger $mem quand on change de squelette (sinon bug inclusions)
//
// http://www.spip.net/@unique
// http://doc.spip.org/@unique
function unique($donnee, $famille='') {
function unique($donnee, $famille='', $cpt = false) {
static $mem;
if ($cpt)
return count($mem[$famille]);
if (!($mem[$famille][$donnee]++))
return $donnee;
}
......@@ -1709,4 +1712,4 @@ function concat(){
return $texte;
}
?>
?>
\ No newline at end of file
......@@ -1263,4 +1263,20 @@ function balise_PIPELINE_dist($p) {
return $p;
}
//
// #TOTAL_UNIQUE
// pour recuperer le nombre d'elements affiches par l'intermediaire du filtre
// |unique
// usage:
// #TOTAL_UNIQUE afiche le nombre de #BALISE|unique
// #TOTAL_UNIQUE{famille} afiche le nombre de #BALISE|unique{famille}
//
// http://doc.spip.org/@balise_TOTAL_UNIQUE_dist
function balise_TOTAL_UNIQUE_dist($p) {
$_famille = interprete_argument_balise(1,$p);
$_famille = $_famille ? $_famille : "''";
$p->code = "unique('', $_famille, true)";
return $p;
}
?>
\ No newline at end of file
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter