Skip to content
Extraits de code Groupes Projets
Valider bc3dcd72 rédigé par Fil's avatar Fil
Parcourir les fichiers

prendre en compte $spip_matrice au niveau du compilateur (nécessite d'appeler...

prendre en compte $spip_matrice au niveau du compilateur (nécessite d'appeler une fonction filtrer($filtre, $arguments) qui chargera le fichier de définition de $filtre avant d'appeler la fonction avec les arguments)
parent 28df56b1
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -13,6 +13,17 @@ ...@@ -13,6 +13,17 @@
if (!defined("_ECRIRE_INC_VERSION")) return; if (!defined("_ECRIRE_INC_VERSION")) return;
// Appliquer un filtre (eventuellement defini dans la matrice) aux donnees
// et arguments
function filtrer($filtre) {
if ($f = $GLOBALS['spip_matrice'][$filtre])
include_local($f);
$tous = func_get_args();
array_shift($tous); # enlever $filtre
return call_user_func_array($filtre, $tous);
}
// Echappement des entites HTML avec correction des entites "brutes" // Echappement des entites HTML avec correction des entites "brutes"
// (generees par les butineurs lorsqu'on rentre des caracteres n'appartenant // (generees par les butineurs lorsqu'on rentre des caracteres n'appartenant
// pas au charset de la page [iso-8859-1 par defaut]) // pas au charset de la page [iso-8859-1 par defaut])
...@@ -2106,9 +2117,9 @@ function tags2dcsubject($tags) { ...@@ -2106,9 +2117,9 @@ function tags2dcsubject($tags) {
} }
// fabrique un bouton de type $t de Name $n, de Value $v et autres attributs $a // fabrique un bouton de type $t de Name $n, de Value $v et autres attributs $a
function boutonne($t, $n, $v, $a='') { function boutonne($t, $n, $v, $a='') {
return "\n<input type='$t'" . return "\n<input type='$t'"
(!$n ? '' : " name='$n'") . . (!$n ? '' : " name='$n'")
" value=\"$v\" $a />"; . " value=\"$v\" $a />";
} }
?> ?>
...@@ -363,8 +363,14 @@ function compose_filtres($p, $code) { ...@@ -363,8 +363,14 @@ function compose_filtres($p, $code) {
$arglist = compose_filtres_args($p, $filtre, $arglist = compose_filtres_args($p, $filtre,
($fonc == '?' ? ':' : ',')); ($fonc == '?' ? ':' : ','));
// le filtre existe sous forme de fonction ou de methode // le filtre est defini dans la matrice ? il faut alors l'appeler
if (function_exists($fonc) // de maniere indirecte, pour charger au prealable sa definition
if (isset($GLOBALS['spip_matrice'][$fonc])) {
$code = "filtrer('$fonc',$code$arglist)";
}
// le filtre est defini sous forme de fonction ou de methode
// par ex. dans inc_texte, inc_filtres ou mes_fonctions
else if (function_exists($fonc)
OR (preg_match("/^(\w*)::(\w*)$/", $fonc, $regs) OR (preg_match("/^(\w*)::(\w*)$/", $fonc, $regs)
AND is_callable(array($regs[1], $regs[2])) AND is_callable(array($regs[1], $regs[2]))
)) ))
......
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