/** * 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); }
/** * 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); }
/** * @dataProvider translateDataProvider */ public function testTranslate($inputText, $expectedTranslation) { $actualTranslation = $this->_model->translate(array($inputText)); $this->assertEquals($expectedTranslation, $actualTranslation); }
/** * @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))); }