[spip-dev] #SINON

Salut les devs,

ce serait vachement pratique un truc genre

[ parfois là (#BALISE) mais pas toujours #SINON kekchose quand même ]

car aujourd'hui si je ne m'abuse, ya rien de léger pour faire ça ...

Zen pensez kekchose ?

JLuc

bon je crois qu'un filtre ça va quand même :

dans les cas simples [(#BALISE|sinon{"altern"})]

ou en général [(#BALISE|sinon{"altern", "avant", "après"}]
ça ira encore ...

A +,
JLuc

JLuc wrote:

JLuc a écrit:

bon je crois qu'un filtre ça va quand même :

dans les cas simples [(#BALISE|sinon{"altern"})]

ou en général [(#BALISE|sinon{"altern", "avant", "après"}]
ça ira encore ...

hmmm ! bonne idée !
j'ai déjà eut besoin de ce genre de choses, sans trouvé de solution

Sylvain wrote:

JLuc a écrit:

bon je crois qu'un filtre ça va quand même :

dans les cas simples [(#BALISE|sinon{"altern"})]

ou en général [(#BALISE|sinon{"altern", "avant", "après"}]
ça ira encore ...

hmmm ! bonne idée !
j'ai déjà eut besoin de ce genre de choses, sans trouvé de solution

A +,
JLuc

JLuc wrote:

Salut les devs,

ce serait vachement pratique un truc genre

[ parfois là (#BALISE) mais pas toujours #SINON kekchose quand même ]

car aujourd'hui si je ne m'abuse, ya rien de léger pour faire ça ...

Zen pensez kekchose ?

JLuc

_______________________________________________
liste: http://listes.rezo.net/mailman/listinfo/spip-dev
doc: http://www.uzine.net/spip
cvs: http://rezo.net/spip-dev/devel/

Est-ce que ça irait ça ?

http://www.uzine.net/spip_contrib/ecrire/articles.php3?id_article=144

James aka Kliké

Bien vu,
t'as raison de mettre ça sur spip_contrib.

Il me semble qu'il vaut peut-être mieux éviter la majuscule
dans le nom de la fonction puisqu'il n'y en a pas dans les
autres filtres spip...

A part ça, mon égo aimerait bien que tu rajoutes un petit truc
genre "d'après une idée de Jean-Luc Girard"
et il te remercie d'avance :wink:

Cordialement !
Jean Luc

JLuc wrote:

Bien vu,
t'as raison de mettre ça sur spip_contrib.

Il me semble qu'il vaut peut-être mieux éviter la majuscule
dans le nom de la fonction puisqu'il n'y en a pas dans les
autres filtres spip...

A part ça, mon égo aimerait bien que tu rajoutes un petit truc
genre "d'après une idée de Jean-Luc Girard"
et il te remercie d'avance :wink:

Cordialement !
Jean Luc

Et voilà :wink: (t'as bien raison, bienvenue à l'égoland :slight_smile: )
Amicalement !

James

Pour la syndication des sites, ne serait-il pas utile d'avoir une nouvelle
balise: #URL_SYNDIC pour indiquer la source du fichier xml de syndication?

Ça faciliterait beaucoup l'échange et l'importation/exportation de listes de
sites syndiqués selon l'un des formats les plus courants pour ce type
d'opération, soit:

OCS
http://www.syndic8.com/genfeed.php?Format=ocs
OPML
http://www.syndic8.com/genfeed.php?Format=opml
RSS
http://www.syndic8.com/genfeed.php?Format=rss

Et, tant qu'à y être, pourquoi pas une petite colonne de plus dans la table
META pour y ajouter la #DESCRIPTION du site (et, évidemment, un champ de
saisie dans la configuration du site) ainsi qu'une jolie balise de site du
genre: #DESCRIPTION_SITE_SPIP).

Je vois d'ailleurs plusieurs applications à cette dernière balise.

André Vincent

http://www.uzine.net/spip_contrib/ecrire/articles.php3?id_article=144

Tiens, oui, c'est une excellente idée. On devrait l'intégrer dans les
filtres par défaut (si elle est GPL|sinon{on la reprogrammera en GPL}). :wink:

-- Fil

Fil wrote:

http://www.uzine.net/spip_contrib/ecrire/articles.php3?id_article=144

Tiens, oui, c'est une excellente idée. On devrait l'intégrer dans les
filtres par défaut (si elle est GPL|sinon{on la reprogrammera en GPL}). :wink:

-- Fil

Elle est GPL si JLuc est d'accord :wink:

Impec !
c'était d'ailleurs le sujet initial : une extension du langage...
JLuc

Fil wrote:

> http://www.uzine.net/spip_contrib/ecrire/articles.php3?id_article=144
Tiens, oui, c'est une excellente idée. On devrait l'intégrer dans les
filtres par défaut

Voilà qui est fait. Merci !

-- Fil

Ya une 2eme version plus générale avec :

function sinon ($texte, $altern='', $avant='', $apres='')
{
  if ($texte)
    return $avant.$texte.$apres;
  else
    return $altern;
};

Ainsi on traite facilement les cas où *SEULementle* cas "chaine non vide" doit insérer les chaines avant et après (car ya pas de raison qu'on veuille toujours les insérer si la chaine est vide).
C'est plus polyvalent, et ça ne modifie rien à l'usage dans les cas simples !

JLuc

Fil wrote:

JLuc wrote:

Ya une 2eme version plus générale avec :

function sinon ($texte, $altern='', $avant='', $apres='')
{
    if ($texte)
        return $avant.$texte.$apres;
    else
        return $altern;
};

Ainsi on traite facilement les cas où *SEULementle* cas "chaine non vide" doit insérer les chaines avant et après (car ya pas de raison qu'on veuille toujours les insérer si la chaine est vide).
C'est plus polyvalent, et ça ne modifie rien à l'usage dans les cas simples !

JLuc

Fil wrote:

http://www.uzine.net/spip_contrib/ecrire/articles.php3?id_article=144

Tiens, oui, c'est une excellente idée. On devrait l'intégrer dans les
filtres par défaut

Voilà qui est fait. Merci !

-- Fil

_______________________________________________
liste: http://listes.rezo.net/mailman/listinfo/spip-dev
doc: http://www.uzine.net/spip
cvs: http://rezo.net/spip-dev/devel/

bof, bof...

pourquoi ne pas faire la concaténation AVANT l'appel du filtre ?

[(#BALISE|sinon{"avant"."texte"."apres"})] fait la même chose que ta modif...

enfin, bon, ce que j'en dis :wink:

James

Parce que dans ce cas là, je vois pas sur quoi tu vas faire le test :slight_smile:

À+, Pif.

Non, je crois que tu n'as pas bien fait attention au source
(altern != texte !!)

ex : je veux
  <div class="notes">#NOTES</div>
si ya des notes
et :
  <div class="nonotes"Il n'y a pas de notes</div>
si il n'y a pas de notes.

C'est pas possible de l'écrire "en spip" sans l'extension 2eme version et sans recours au php.
(à moins que ... ??? montre moi ! ;-))

Avec l'extension [(#BALISE|sinon{"altern", "avant", "après"}]
par contre ça s'écrit ainsi :

[(#NOTES|sinon{ "<div class="nonotes"Il n'y a pas de notes</div>",
    "<div class="notes">", // avant
    "</div>" }; // après
]

(par exemple, car ya d'autres manières de l'écrire)

JLuc

James wrote:

Autant pour moi ! (oups)

Cependant, on se retrouve avec 2 'avant' et 2 'après', c'est confus.

James

JLuc wrote:

James wrote:

Autant pour moi ! (oups)
Cependant, on se retrouve avec 2 'avant' et 2 'après', c'est confus.

Effectivement la syntaxe générique devient :
[ avant1 (textetest|sinon{"altern", "avant2", "après2"} après1 ]

C'est moins limpide mais bon, c'est dans la logique...

Note qu'en général avant1 et avant2 n'ont plus de raison d'être
car "sinon" renvoie - en général - quelquechose de non vide
et en conséquence, les parties avant1 et apres1, systématiquement insérées, seront spécifiées à l'extérieur du [ ] :
  toutleresteavant1
  [ (textetest|sinon{"altern", "avant2", "après2"} ]
  toutleresteaprès1

ça déconfusionne beaucoup la lecture...et on y coupe pas si on veut pouvoir traiter le genre de situation dans l'exemple indiqué.

JLuc

il fallait lire

En fait #URL_SYNDIC existe déjà, mais on avait oublié de le documenter.
Merci !

-- Fil

@ Andre Vincent <andre@alternatives.ca> :