Incompatibilité avec le plugin CIBLOC

Bonjour,

Problème constaté

Si le plugin multilang n’est pas activé et que le plugin CIBLOC est activé, un article avec le texte ci-dessous s’affiche sans problème ([bloc_bordure] est inséré par le plugin CIBLOC) :

<multi>[fr]en français

[bloc_bordure]
{{{Intertitre}}}
Si autem filium parvulum habuerit,
[/bloc_bordure]

[en]in english

[bloc_ombre]
{{{Intertitre}}}
Text in english.[/bloc_ombre]
</multi>

Aussi, SPIP gère très bien ce cas,

Si le plugin multilang est activé, seule la phrase « en français » s’affiche dans le champ de saisie du texte de l’article, En revanche, tout est bien enregistré dans la base de données.

Visiblement le plugin multilang considère "bloc_bordure" comme une langue et n’affiche pas ce qui le suit.

Une solution

Une solution consiste à remplacer dans le fichier \multilang\javascript\multilang.js, la ligne 34 suivante :

var multilang_match_multi = /(?:\[([a-z_]+)\]|^[\s\n]*)((?:.|\n|\s)*?)(?=\[[a-z_]+\]|$)/ig;

par l’expression régulière suivante, qui tient compte du fait qu’un code de pays est à deux lettres (ce qui évite de considérer « bloc_... » comme une langue) :

var multilang_match_multi = /(?:\[([a-z]{2}(?:_[a-z]+)*)\]|^[\s\n]*)((?:.|\n|\s)*?)(?=\[[a-z]{2}(?:_[a-z]+)*\]|$)/ig;

Cordialement, Equipement

Personne assignée Chargement en cours
Suivi du temps Chargement en cours

Forge communautaire SPIP | Charte d'utilisation | Signaler un problème sur ce site