Valider de085b1d rédigé par RastaPopoulos's avatar RastaPopoulos
Parcourir les fichiers

Aller hop : la fonction inc/traduire permettait depuis lonnnnnnnngtemps de...

Aller hop : la fonction inc/traduire permettait depuis lonnnnnnnngtemps de passer explicitement une langue précise, sauf que la vraie fonction utilisateur _T() ne l'a jamais permise et donc les chaines de langue non plus.

On peut désormais passer une langue à _T() ou a une <:chaine:> en donnant en argument le même nom de variable que la globale de langue : "spip_lang".

_T('ma_chaine', array('truc'=>'remplace', 'spip_lang'=>'eu'));

<:ma_chaine{truc=remplace, spip_lang=eu}:>
parent a03ae243
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+13 −1
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -437,7 +437,19 @@ function _T($texte, $args=array(), $class='') {
		$traduire = charger_fonction('traduire', 'inc');
		include_spip('inc/lang');
	}
	$text = $traduire($texte,$GLOBALS['spip_lang']);
	
	// On peut passer explicitement la langue dans le tableau
	// On utilise le même nom de variable que la globale
	if ($args['spip_lang']){
		$lang = $args['spip_lang'];
		// On l'enleve pour ne pas le passer au remplacement
		unset($args['spip_lang']);
	}
	// Sinon on prend la langue du contexte
	else{
		$lang = $GLOBALS['spip_lang'];
	}
	$text = $traduire($texte, $lang);

	if (!strlen($text))
		// pour les chaines non traduites, assurer un service minimum