ENHANCEMENT Allowing textcollection of multiple modules selectively

git-svn-id: svn://svn.silverstripe.com/silverstripe/open/modules/sapphire/branches/2.3@68745 467b73ca-7a2a-4603-9d3b-597d59a354a9
This commit is contained in:
Ingo Schommer 2008-12-13 09:50:08 +00:00 committed by Sam Minnee
parent d558633a8a
commit b32226f809
2 changed files with 14 additions and 3 deletions

View File

@ -63,15 +63,25 @@ class i18nTextCollector extends Object {
* and write the resultant files in the lang folder of each module.
*
* @uses DataObject->collectI18nStatics()
*
* @param array $restrictToModules
*/
public function run($restrictToModule = null) {
public function run($restrictToModules = null) {
//Debug::message("Collecting text...", false);
$modules = array();
// A master string tables array (one mst per module)
$entitiesByModule = array();
//Search for and process existent modules, or use the passed one instead
$modules = (isset($restrictToModule)) ? array(basename($restrictToModule)) : scandir($this->basePath);
if($restrictToModules && count($restrictToModules)) {
foreach($restrictToModules as $restrictToModule) {
$modules[] = basename($restrictToModule);
}
} else {
$modules = scandir($this->basePath);
}
foreach($modules as $module) {
// Only search for calls in folder with a _config.php file (which means they are modules)

View File

@ -26,7 +26,8 @@ class i18nTextCollectorTask extends BuildTask {
*/
public function run($request) {
$c = new i18nTextCollector();
return $c->run($request->getVar('module'));
$restrictModules = ($request->getVar('module')) ? explode(',', $request->getVar('module')) : null;
return $c->run($restrictModules);
}
}
?>