Jump to content

[RESOLU]Traduction des admintabs en module


ningu

Recommended Posts

Philippe,
La suite de mes péripéties sur les traductions dans les modules :

Report 2615 : ca marche nickel, j'ai bien les traductions dans les blocks depuis un tpl d'un module

Report 2546 : traduction dans un fichier AdminMyObject situé dans un module.
Le report étant rejeté, j'avais la solution ci-jointe qui me paraissait élégante :
l'adminMyObject redéfinit sa methode l() avec les bons (me semble-t-il) paramètres.

protected function l($string, $class = __CLASS__, $addslashes = FALSE, $htmlentities = TRUE)
   {
       include_once (dirname(__FILE__).'/monmodule.php');

       $module = new MonModule();
       return $module->l($string, $class, $addslashes, $htmlentities);
   }


On appelle alors $this->l('chaine') comme pour les admins situés dans admin/tabs

Nickel sur une 1.2.0.8

Sur une 1.2.1, à l'install, ca semble OK.
Par contre, dès que je regènère les traductions, ca ne traduit plus...

Me voilà donc perplexe.... :roll:
Serait-ce lié à la correction du 2615 ?
Merci

essaitranslationadmin.zip

Link to comment
Share on other sites

Un petit up pour la Team ;-)

Dans mon exemple, la manière de gérer les traductions pour un fichier AdminXXX.php dans un module est-elle correcte ou y a-t-il un souci dans la gestion des traductions dans le core ?

Philippe m'ayant rejecté le 2546, je sais pas trop ce qui est du fonctionnement normal ou pas.
Il devrait être possible de traduire tous les fichiers dans un module ?

Merci

Link to comment
Share on other sites

Phillipe est en vacances actuellement, je vais donc le remplacer.
Voici le code que tu dois mettre pour traduire, tu mets ça dans ton AdminXXX.php :

 private $module = 'XXX';
 public function __construct()
 {
   global $cookie, $_LANGADM;
   $langFile = _PS_MODULE_DIR_.$module.'/'.Language::getIsoById(intval($cookie->id_lang)).'.php';
   if(file_exists($langFile))
   {
     require_once $langFile;
     foreach($_MODULE as $key=>$value)
       if(substr(strip_tags($key), 0, 5) == 'Admin')
         $_LANGADM[str_replace('_', '', strip_tags($key))] = $value;
   }
   parent::__construct();
 }



Edition:
Nous allons travailler avec Philippe pour que la traduction soit ok dès sa rentrée ;)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...