Exemplo n.º 1
0
 /**
  * Search for translation
  *
  * @param string $code Language code OPTIONAL
  *
  * @return \XLite\Model\Base\Translation
  */
 public function getHardTranslation($code = null)
 {
     return \Includes\Utils\ArrayManager::searchInObjectsArray($this->getTranslations()->toArray(), 'getCode', $this->getTranslationCode($code));
 }
Exemplo n.º 2
0
 /**
  * Check if the language code is in the active languages list
  * If customer language is not used right now, the default customer language code is used
  *
  * @param string $languageCode Language code
  *
  * @return string
  */
 protected function checkForActiveLanguage($languageCode)
 {
     $result = $languageCode;
     $langs = \XLite\Core\Database::getRepo('XLite\\Model\\Language')->findActiveLanguages();
     if (!empty($langs)) {
         $resultModel = \Includes\Utils\ArrayManager::searchInObjectsArray($langs, 'getCode', $result);
         if (null === $resultModel) {
             $result = \XLite\Core\Config::getInstance()->General->default_language;
         }
     }
     return $result;
 }
Exemplo n.º 3
0
 /**
  * Define current language
  *
  * @return string Language code
  */
 protected function defineCurrentLanguage()
 {
     $languages = \XLite\Core\Database::getRepo('XLite\\Model\\Language')->findActiveLanguages();
     if (!\XLite::isAdminZone() && !empty($languages)) {
         $language = isset(\XLite\Core\Config::getInstance()->General) ? \XLite\Core\Config::getInstance()->General->default_language : 'en';
         $result = \Includes\Utils\ArrayManager::searchInObjectsArray($languages, 'getCode', $language);
     }
     return isset($result) ? $result->getCode() : static::getDefaultLanguage();
 }