FIX: ensure config variables exist

This commit is contained in:
Will Rossiter 2013-05-08 21:36:49 +12:00
parent 72f81447f0
commit 7a9f142c97

View File

@ -248,19 +248,28 @@ class SS_ClassManifest {
/**
* Returns an array of module names mapped to their paths.
* "Modules" in SilverStripe are simply directories with a _config.php file.
*
* "Modules" in SilverStripe are simply directories with a _config.php
* file.
*
* @return array
*/
public function getModules() {
$modules = array();
foreach($this->configs as $configPath) {
$modules[basename(dirname($configPath))] = dirname($configPath);
if($this->configs) {
foreach($this->configs as $configPath) {
$modules[basename(dirname($configPath))] = dirname($configPath);
}
}
foreach($this->configDirs as $configDir) {
$path = preg_replace('/\/_config$/', '', dirname($configDir));
$modules[basename($path)] = $path;
if($this->configDirs) {
foreach($this->configDirs as $configDir) {
$path = preg_replace('/\/_config$/', '', dirname($configDir));
$modules[basename($path)] = $path;
}
}
return $modules;
}