Exemplo n.º 1
0
 /**
  * Return current translation code
  *
  * @param string $code Language code OPTIONAL
  *
  * @return string
  */
 protected function getTranslationCode($code = null)
 {
     if (!isset($code)) {
         if ($this->editLanguage) {
             $code = $this->editLanguage;
         } elseif (\XLite\Logic\Export\Generator::getLanguageCode()) {
             $code = \XLite\Logic\Export\Generator::getLanguageCode();
         } elseif (\XLite\Logic\Import\Importer::getLanguageCode()) {
             $code = \XLite\Logic\Import\Importer::getLanguageCode();
         } elseif (\XLite\Core\Translation::getTmpMailTranslationCode()) {
             $code = \XLite\Core\Translation::getTmpMailTranslationCode();
         } else {
             $code = $this->getSessionLanguageCode();
         }
     }
     return $code;
 }
Exemplo n.º 2
0
 /**
  * Translate by string
  *
  * @param string $name      Label name
  * @param array  $arguments Substitute arguments OPTIONAL
  * @param string $code      Language code OPTIONAL
  *
  * @return string
  */
 public function translateByString($name, array $arguments = array(), $code = null)
 {
     if (empty($code)) {
         $code = \XLite\Logic\Export\Generator::getLanguageCode() ?: \XLite\Core\Session::getInstance()->getLanguage()->getCode();
     }
     $result = $this->getDriver()->translate($name, $code);
     if (!isset($result)) {
         $result = $name;
     }
     if (!empty($arguments)) {
         $result = $this->processSubstitute($result, $arguments);
     }
     return $result;
 }