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