diff --git a/htdocs/comm/mailing/cibles.php b/htdocs/comm/mailing/cibles.php index 14b55e80b75..0b642de04ce 100644 --- a/htdocs/comm/mailing/cibles.php +++ b/htdocs/comm/mailing/cibles.php @@ -24,6 +24,7 @@ */ require("../../main.inc.php"); +require_once(DOL_DOCUMENT_ROOT."/core/modules/mailings/modules_mailings.php"); require_once(DOL_DOCUMENT_ROOT."/comm/mailing/class/mailing.class.php"); require_once(DOL_DOCUMENT_ROOT."/core/lib/emailing.lib.php"); require_once(DOL_DOCUMENT_ROOT."/core/class/CMailFile.class.php"); @@ -54,30 +55,8 @@ $search_prenom=GETPOST("search_prenom"); $search_email=GETPOST("search_email"); // Search modules dirs -$modulesdir = array(); -foreach ($conf->file->dol_document_root as $type => $dirroot) -{ - $modulesdir[$dirroot . '/core/modules/mailings/'] = $dirroot . '/core/modules/mailings/'; +$modulesdir = dolGetModulesDirs('/mailings'); - $handle=@opendir($dirroot); - if (is_resource($handle)) - { - while (($file = readdir($handle))!==false) - { - if (is_dir($dirroot.'/'.$file) && substr($file, 0, 1) <> '.' && substr($file, 0, 3) <> 'CVS' && $file != 'includes') - { - if (is_dir($dirroot . '/' . $file . '/core/modules/mailings/')) - { - $modulesdir[$dirroot . '/' . $file . '/core/modules/mailings/'] = $dirroot . '/' . $file . '/core/modules/mailings/'; - } - } - } - closedir($handle); - } -} -//var_dump($modulesdir); - -$dirmod=DOL_DOCUMENT_ROOT."/core/modules/mailings"; /* @@ -134,10 +113,7 @@ if ($action == 'add') if ($action == 'clear') { // Chargement de la classe - $file = $dirmod."/modules_mailings.php"; $classname = "MailingTargets"; - require_once($file); - $obj = new $classname($db); $obj->clear_target($id); @@ -152,10 +128,7 @@ if ($action == 'delete') $resql=$db->query($sql); if ($resql) { - $file = $dirmod."/modules_mailings.php"; $classname = "MailingTargets"; - require_once($file); - $obj = new $classname($db); $obj->update_nb($id); } diff --git a/htdocs/core/lib/functions2.lib.php b/htdocs/core/lib/functions2.lib.php index 25b07af7a4a..cb9f9e41932 100644 --- a/htdocs/core/lib/functions2.lib.php +++ b/htdocs/core/lib/functions2.lib.php @@ -28,9 +28,10 @@ /** * Return list of modules directories * - * @return array Array of directories that can contains module descriptors + * @param string $subdir Sub directory (Example: '/mailings') + * @return array Array of directories that can contains module descriptors */ -function dolGetModulesDirs() +function dolGetModulesDirs($subdir='') { global $conf; @@ -39,7 +40,7 @@ function dolGetModulesDirs() foreach ($conf->file->dol_document_root as $type => $dirroot) { // Default core/modules dir - $modulesdir[$dirroot . '/core/modules/'] = $dirroot . '/core/modules/'; + $modulesdir[$dirroot . '/core/modules'.$subdir.'/'] = $dirroot . '/core/modules'.$subdir.'/'; // Scan dir from external modules $handle=@opendir($dirroot); @@ -49,9 +50,9 @@ function dolGetModulesDirs() { if (is_dir($dirroot.'/'.$file) && substr($file, 0, 1) <> '.' && substr($file, 0, 3) <> 'CVS' && $file != 'includes') { - if (is_dir($dirroot . '/' . $file . '/core/modules/')) + if (is_dir($dirroot . '/' . $file . '/core/modules'.$subdir.'/')) { - $modulesdir[$dirroot . '/' . $file . '/core/modules/'] = $dirroot . '/' . $file . '/core/modules/'; + $modulesdir[$dirroot . '/' . $file . '/core/modules'.$subdir.'/'] = $dirroot . '/' . $file . '/core/modules'.$subdir.'/'; } } }