Author: david
Date: Thu Apr 26 13:35:47 2012
New Revision: 11527

Log:
Specify target directory for output files

Modified:
   trunk/lib/task/i18n/i18nConsolidateTask.class.php

Modified: trunk/lib/task/i18n/i18nConsolidateTask.class.php
==============================================================================
--- trunk/lib/task/i18n/i18nConsolidateTask.class.php   Thu Apr 26 00:02:56 
2012        (r11526)
+++ trunk/lib/task/i18n/i18nConsolidateTask.class.php   Thu Apr 26 13:35:47 
2012        (r11527)
@@ -34,7 +34,8 @@
   protected function configure()
   {
     $this->addArguments(array(
-      new sfCommandArgument('culture', sfCommandArgument::REQUIRED, 'The 
target culture'),
+      new sfCommandArgument('culture', sfCommandArgument::REQUIRED, 'Message 
culture'),
+      new sfCommandArgument('target', sfCommandArgument::REQUIRED, 'Target 
directory')
     ));
 
     $this->addOptions(array(
@@ -56,7 +57,12 @@
    */
   public function execute($arguments = array(), $options = array())
   {
-    $this->logSection('i18n', sprintf('Consolidating *%s* i18n messages', 
$arguments['culture']));
+    if (!file_exists($arguments['target']))
+    {
+      throw new sfException('Target directory "'.$arguments['target'].'" 
doesn\t exist');
+    }
+
+    $this->logSection('i18n', sprintf('Consolidating %s i18n messages', 
$arguments['culture']));
 
     // get i18n configuration from factories.yml
     $config = 
sfFactoryConfigHandler::getConfiguration($this->configuration->getConfigPaths('config/factories.yml'));
@@ -70,9 +76,9 @@
     $extract = new sfI18nConsolidatedExtract($i18n, $arguments['culture']);
     $extract->extract();
 
-    // Save to app/qubit/i18n/consolidated
+    // Write to target directory
     $consolidated = new $class($this->configuration, new sfNoCache(), $params);
-    
$consolidated->setMessageSource(array(sfConfig::get('sf_web_dir').'/i18n/consolidated'),
 $arguments['culture']);
+    $consolidated->setMessageSource(array($arguments['target']), 
$arguments['culture']);
     $consolidated->getMessageSource()->setCulture($arguments['culture']);
     $extract->save($consolidated);
   }

-- 
You received this message because you are subscribed to the Google Groups 
"Qubit Toolkit Commits" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/qubit-commits?hl=en.

Reply via email to