[SPIP Zone] plugin mutualisation - i18n

Salut les ami-e-s,

Je m'essayais au (pseudo-)plugin miutualisation (superbe!) et je voulais
l'internationaliser.

Après m'être un peu cassé la tête sur les inclure à ajouter, je me suis
rendu compte que le problème était dans l'emplacement des fichiers de
langue:
les fichiers dans ./mutualisation/lang/ (à la racine du site, comme
suggéré sur spip-contrib) ne sont pas pris en compte. Il faut forcément
les mettre dans l'un des répertoires habituels: ./ecrire/lang/
ou ./plusgins/xxx/lang/ ou ./squlettes/lang/, etc.

¿Quelle serait la bonne solution pour organiser les fichiers du plugin?

amitiés,
daniel

Daniel Viñar Ulriksen a écrit :

Salut les ami-e-s,

Je m'essayais au (pseudo-)plugin miutualisation (superbe!) et je voulais
l'internationaliser.

Après m'être un peu cassé la tête sur les inclure à ajouter, je me suis
rendu compte que le problème était dans l'emplacement des fichiers de
langue: les fichiers dans ./mutualisation/lang/ (à la racine du site, comme
suggéré sur spip-contrib) ne sont pas pris en compte. Il faut forcément
les mettre dans l'un des répertoires habituels: ./ecrire/lang/
ou ./plusgins/xxx/lang/ ou ./squlettes/lang/, etc.

¿Quelle serait la bonne solution pour organiser les fichiers du plugin?

Bonne question...
En gardant (ou créant) un dossier lang/ dans le plugin de mutualisation, on devrait pouvoir s'en sortir à condition d'indiquer le chemin du plugin dans son config/mes_options.php dans la globale "dossiers_squelettes" (enfin, je suppute, faut tester), par exemple comme ceci :

$GLOBALS['dossier_squelettes'] .= ':mutualisation';

ou encore selon l'emplacement dudit pseudo plugin

$GLOBALS['dossier_squelettes'] .= ':plugins/mutualisation';

Tu nous tiens au courant ?

--
MM.

Merci pour ta réponse Matthieu,

El mar, 24-03-2009 a las 09:07 +0100, Matthieu Marcillaud escribió:

> les fichiers dans ./mutualisation/lang/ (à la racine du site, comme
> suggéré sur spip-contrib) ne sont pas pris en compte. Il faut
> forcément les mettre dans l'un des répertoires
> habituels: ./ecrire/lang/ ou ./plusgins/xxx/lang/
> ou ./squlettes/lang/, etc.
>
> ¿Quelle serait la bonne solution pour organiser les fichiers du
> plugin?

Bonne question...
En gardant (ou créant) un dossier lang/ dans le plugin de
mutualisation,
on devrait pouvoir s'en sortir à condition d'indiquer le chemin du
plugin dans son config/mes_options.php dans la globale
"dossiers_squelettes" (enfin, je suppute, faut tester),

Ah oui, bonne idée d'utiliser la variable 'dossiers_squelettes'. ca
devrait marcher. En plus, le plugin a un fichier mes_options.php.txt
adapter, dans lequel on peut ajouter cela. Je vais essayer.

par exemple comme ceci :

$GLOBALS['dossier_squelettes'] .= ':mutualisation';

Mmmm... certes, ca devrait marcher de mettre ca pour prendre en compte
un dossier ./mutualisation/lang/, mais c'est p'tet pas très propre:
./mutualisation/ n'est pas un dossier de squelettes, mais un dossier de
(pseudo)plugin. Y'a du .php, du exec/, du base/...: pas très heureux que
SPIP fouille là dedans au moment de chercher des squelettes, non?

¿Y aurait-il un équivalent de la variable 'dossiers_squelettes', mais
pour les plugins? ¿Ou 'dossiers_squelettes' est un "legacy" de qque
chose genre SPIP 1.3 et on évite ce genre de choses pour les plugins?

ou encore selon l'emplacement dudit pseudo plugin

$GLOBALS['dossier_squelettes'] .= ':plugins/mutualisation';

Si on met mutualisation dans le dossier plugins, ca devrait marcher sans
avoir besoin de cette définition. Mais l'article sur spip-contrib [1]
conseille de le mettre à la racine. C'est ca qu'il faudrait explorer...
(ce que j'ai pas fait, j'ai juste obéi :slight_smile:

Tu nous tiens au courant ?

Ok. Avis de mutualiseurs grml et autres bienvenus aussi :slight_smile:

daniel

[1] http://www.spip-contrib.net/Plugin-Mutualisation

Daniel Viñar Ulriksen a écrit :

$GLOBALS['dossier_squelettes'] .= ':mutualisation';
    

Mmmm... certes, ca devrait marcher de mettre ca pour prendre en compte
un dossier ./mutualisation/lang/, mais c'est p'tet pas très propre: ./mutualisation/ n'est pas un dossier de squelettes, mais un dossier de
(pseudo)plugin. Y'a du .php, du exec/, du base/...: pas très heureux que
SPIP fouille là dedans au moment de chercher des squelettes, non?
  

Si, c'est propre, d'ailleurs, on l'utilise déjà pour avoir accès à la page servant à lister les différents sites (et les upgrader) (RealEt s'occupe de cette partie, je connais plus l'adresse de mémoire)

Par ailleurs, un dossier squelettes contient ce que l'on veut, php, html, js, css, il est simplement prioritaire sur les plugins. Définir un dossier squelettes, c'est comme définir un plugin en fait (à très peu de chose près - ou vice versa !). Tout ça pour dire que ça ne pose pas de problème d'avoir accès aux fichiers php (le tout c'est qu'ils soient bien protégés avec les bonnes autorisations !)

ou encore selon l'emplacement dudit pseudo plugin

$GLOBALS['dossier_squelettes'] .= ':plugins/mutualisation';

Si on met mutualisation dans le dossier plugins, ca devrait marcher sans
avoir besoin de cette définition. Mais l'article sur spip-contrib [1]
conseille de le mettre à la racine. C'est ca qu'il faudrait explorer...
(ce que j'ai pas fait, j'ai juste obéi :slight_smile:
  

Comme presque dit au dessus, plugin ou dossier squelettes, c'est presque pareil, seulement, on dit "pseudo" plugin de mutualisation, car ce n'est pas un plugin qu'on active dans l'interface privée de son SPIP, c'est pourquoi on a tendance à le sortir de /plugins, sinon ce plugin est listé dans la liste des plugins.

Voila voilà...

--
MM.

* Matthieu Marcillaud tapuscrivait, le 24/03/2009 17:59:

Daniel Viñar Ulriksen a écrit :

$GLOBALS['dossier_squelettes'] .= ':mutualisation';
    

Mmmm... certes, ca devrait marcher de mettre ca pour prendre en compte
un dossier ./mutualisation/lang/, mais c'est p'tet pas très propre: ./mutualisation/ n'est pas un dossier de squelettes, mais un dossier de
(pseudo)plugin. Y'a du .php, du exec/, du base/...: pas très heureux que
SPIP fouille là dedans au moment de chercher des squelettes, non?

Si, c'est propre, d'ailleurs, on l'utilise déjà pour avoir accès à la page servant à lister les différents sites (et les upgrader) (RealEt s'occupe de cette partie, je connais plus l'adresse de mémoire)

Y'a pas que moi, Fil a fait l'essentiel, moi je fais comme d'habitude : je hacke et je CSS.
?exec=mutualisation

--
RealET