diff --git a/htdocs/admin/translation.php b/htdocs/admin/translation.php index 51a7d32522e..651335d0a6d 100644 --- a/htdocs/admin/translation.php +++ b/htdocs/admin/translation.php @@ -338,6 +338,9 @@ if ($mode == 'searchkey') $recordtoshow=array(); + // Search modules dirs + $modulesdir = dolGetModulesDirs(); + $nbempty=0; /*var_dump($langcode); var_dump($transkey); @@ -351,22 +354,23 @@ if ($mode == 'searchkey') } else { - // Load all translations keys - foreach($conf->file->dol_document_root as $keydir => $searchdir) + // Search into dir of modules (the $modulesdir is already a list that loop on $conf->file->dol_document_root) + foreach($modulesdir as $keydir => $tmpsearchdir) { - // Directory of translation files - $dir_lang = $searchdir."/langs/".$langcode; - $dir_lang_osencoded=dol_osencode($dir_lang); + $searchdir = $tmpsearchdir; // $searchdir can be '.../htdocs/core/modules/' or '.../htdocs/custom/mymodule/core/modules/' - $filearray=dol_dir_list($dir_lang_osencoded,'files',0,'','',$sortfield,(strtolower($sortorder)=='asc'?SORT_ASC:SORT_DESC),1); + // Directory of translation files + $dir_lang = dirname(dirname($searchdir))."/langs/".$langcode; // The 2 dirname is to go up in dir for 2 levels + $dir_lang_osencoded=dol_osencode($dir_lang); - foreach($filearray as $file) - { - $tmpfile=preg_replace('/.lang/i', '', basename($file['name'])); - $newlang->load($tmpfile, 0, 0, '', 0); // Load translation files + database overwrite - $newlangfileonly->load($tmpfile, 0, 0, '', 1); // Load translation files only - //print 'After loading lang '.$tmpfile.', newlang has '.count($newlang->tab_translate).' records
'."\n"; - } + $filearray=dol_dir_list($dir_lang_osencoded,'files',0,'','',$sortfield,(strtolower($sortorder)=='asc'?SORT_ASC:SORT_DESC),1); + foreach($filearray as $file) + { + $tmpfile=preg_replace('/.lang/i', '', basename($file['name'])); + $newlang->load($tmpfile, 0, 0, '', 0); // Load translation files + database overwrite + $newlangfileonly->load($tmpfile, 0, 0, '', 1); // Load translation files only + //print 'After loading lang '.$tmpfile.', newlang has '.count($newlang->tab_translate).' records
'."\n"; + } } // Now search into translation array