Message "traduction manquante" dans la page de configuration de mon module

Bonjour,
je galère avec la partie « setup » des modules.

Mon idée est de créer un module qui dépend du dictionnaire des événements et que l’utilisateur puisse choisir d’afficher ou non tel ou tel événement dans mon module.

Voici le code que j’utilise pour créer ma liste de paramètres de configuration :

$sqlArrayTypeEvent = "SELECT * FROM llx_c_actioncomm";
$resqlArrayTypeEvent = $db->query($sqlArrayTypeEvent);

while ($objGetTypeEvent = $db->fetch_object($resqlArrayTypeEvent)) {
    $arrayTypeEvent[] = array(
        'id' => $objGetTypeEvent->id,
        'code' => $objGetTypeEvent->code,
        'type' => $objGetTypeEvent->type,
        'libelle' => $objGetTypeEvent->libelle,
        'isactive' => $objGetTypeEvent->isactive,
    );
}

foreach ($arrayTypeEvent as $typeEvent) {
    $text = $typeEvent['libelle'];
    $text = preg_replace('/[\s\/\\\(\)\[\]_]+/', '', $text);
    $item = $formSetup->newItem($text);
    $TField = array(
        '00module01commerce' => $langs->trans('Actif'),
        '00module02commerce' => $langs->trans('Inactif', array(), 'core', true),
    );
    $item->setAsSelect($TField);
}

Le problème est que j’obtiens des messages « traduction manquante » pour chaque paramètre :

Or je ne veux pas les insérer manuellement dans le fichier « mon_module.lang » puisque j’utilise le dictionnaire des événements (que l’utilisateur peut modifier !).

Comment faire ? Merci pour vos idées !

Bonjour adlmr,

Je pense qu’il faudrait faire par base de données.

Pour te donner quelques pistes que j’ai remarquées, tu peux aller voir dans la fonction qui permet de charger la trad tout simplement.

Normalement, si tu va un peu plus profond en cherchant, il y a un loadfromdatabase() (dans la class translate qui se situe dans htdocs/core/class/translate.class.php.)

Je pense que c’est une bonne piste. Il fait un sélect sur la table « overwrite_trans ».

(ligne 483 du fichier translate.class.php).

Tiens-moi au courant si tu as pu trouver des choses, ça serait top !

Arnaud