/**
  * Overwritten translate method
  *
  * @param   array $args Arguments
  * @return  string
  */
 public function translate($args)
 {
     if ($this->_defaultHelper->isLoggingEnabled() && !$this->_defaultHelper->isAdmin()) {
         $text = array_shift($args);
         if (is_string($text) && '' == $text || is_null($text) || is_bool($text) && false === $text || is_object($text) && '' == $text->getText()) {
             return '';
         }
         if ($text instanceof Mage_Core_Model_Translate_Expr) {
             $code = $text->getCode(self::SCOPE_SEPARATOR);
             $module = $text->getModule();
             $text = $text->getText();
             $translated = $this->_getTranslatedString($text, $code);
         } else {
             if (!empty($_REQUEST['theme'])) {
                 $module = 'frontend/default/' . $_REQUEST['theme'];
             } else {
                 $module = 'frontend/default/default';
             }
             $code = $module . self::SCOPE_SEPARATOR . $text;
             $translated = $this->_getTranslatedString($text, $code);
         }
         $translation = Mage::getModel('aoe_translationlogger/translation_logging');
         $translation->setModule($module)->setText($text)->setTranslated($translated)->setChecksum(md5($code))->setStoreView(Mage::app()->getStore()->getStoreId())->setUrl(Mage::app()->getStore()->getCurrentUrl(false))->save();
     }
     return parent::translate($args);
 }
Exemple #2
0
 /**
  * Translate block sentence
  *
  * @return string
  * @SuppressWarnings(PHPMD.ShortMethodName)
  */
 public function __()
 {
     $args = func_get_args();
     $expr = new Mage_Core_Model_Translate_Expr(array_shift($args), $this->getModuleName());
     array_unshift($args, $expr);
     return $this->_translator->translate($args);
 }
 public function __()
 {
     $args = func_get_args();
     return parent::translate($args);
 }
Exemple #4
0
 /**
  * @dataProvider translateDataProvider
  */
 public function testTranslate($inputText, $expectedTranslation)
 {
     $actualTranslation = $this->_model->translate(array($inputText));
     $this->assertEquals($expectedTranslation, $actualTranslation);
 }
Exemple #5
0
 /**
  * @magentoConfigFixture global/locale/inheritance/en_AU en_UK
  * @magentoConfigFixture global/locale/inheritance/en_UK en_US
  * @dataProvider translateWithLocaleInheritanceDataProvider
  */
 public function testTranslateWithLocaleInheritance($inputText, $expectedTranslation)
 {
     $model = new Mage_Core_Model_Translate();
     $model->setLocale('en_AU');
     $model->init('frontend');
     $this->assertEquals($expectedTranslation, $model->translate(array($inputText)));
 }