public static function setdbLanguageTag() { if (self::$vmlang) { return self::$vmlang; } $langs = (array) self::get('active_languages', array()); self::$langCount = count($langs); $siteLang = vRequest::getString('vmlang', false); $params = JComponentHelper::getParams('com_languages'); $defaultLang = $params->get('site', 'en-GB'); //use default joomla if (JFactory::getApplication()->isSite()) { if (!$siteLang) { jimport('joomla.language.helper'); $siteLang = JFactory::getLanguage()->getTag(); } } else { if (!$siteLang) { $siteLang = $defaultLang; } } if (!in_array($siteLang, $langs)) { if (count($langs) === 0) { $siteLang = $defaultLang; } else { $siteLang = $langs[0]; } } self::$vmlangTag = $siteLang; self::$vmlang = strtolower(strtr($siteLang, '-', '_')); self::$defaultLang = strtolower(strtr($defaultLang, '-', '_')); vmdebug('$siteLang: ' . $siteLang . ' self::$_jpConfig->lang ' . self::$vmlang); //@deprecated just fallback defined('VMLANG') or define('VMLANG', self::$vmlang); return self::$vmlang; }
public static function setdbLanguageTag() { if (self::$vmlang) { return self::$vmlang; } $langs = (array) self::get('active_languages', array()); self::$langCount = count($langs); $siteLang = vRequest::getString('vmlang', false); $params = JComponentHelper::getParams('com_languages'); $defaultLang = $params->get('site', 'en-GB'); //use default joomla if (self::$jDefLang = self::get('vmDefLang', false)) { self::$jDefLang = strtolower(strtr(self::$jDefLang, '-', '_')); } else { self::$jDefLang = strtolower(strtr($defaultLang, '-', '_')); } if (JFactory::getApplication()->isSite()) { if (!$siteLang) { jimport('joomla.language.helper'); $siteLang = JFactory::getLanguage()->getTag(); } } else { if (!$siteLang) { $siteLang = $defaultLang; } } self::$vmLangSelected = $siteLang; if (!in_array($siteLang, $langs)) { if (count($langs) === 0) { $siteLang = $defaultLang; } else { $siteLang = $langs[0]; } } self::$vmlangTag = $siteLang; if (count($langs) > 1) { $lfbs = self::get('vm_lfbs'); vmdebug('my lfbs ' . $lfbs); if (!empty($lfbs)) { $pairs = explode(';', $lfbs); if ($pairs and count($pairs) > 0) { $fbsAssoc = array(); foreach ($pairs as $pair) { $kv = explode('~', $pair); if ($kv and count($kv) === 2) { $fbsAssoc[$kv[0]] = $kv[1]; } } if (isset($fbsAssoc[$siteLang])) { $defaultLang = $fbsAssoc[$siteLang]; } self::set('fbsAssoc', $fbsAssoc); } } // this code is uses logic derived from language filter plugin in j3 and should work on most 2.5 versions as well if (class_exists('JLanguageHelper') && method_exists('JLanguageHelper', 'getLanguages')) { $languages = JLanguageHelper::getLanguages('lang_code'); $ltag = JFactory::getLanguage()->getTag(); self::$vmlangSef = $languages[$ltag]->sef; } } self::$vmlang = strtolower(strtr($siteLang, '-', '_')); self::$defaultLang = strtolower(strtr($defaultLang, '-', '_')); vmdebug('$siteLang: ' . $siteLang . ' self::$vmlangSef: ' . self::$vmlangSef . ' self::$_jpConfig->lang ' . self::$vmlang . ' DefLang ' . self::$defaultLang); //@deprecated just fallback defined('VMLANG') or define('VMLANG', self::$vmlang); return self::$vmlang; }
public static function setdbLanguageTag() { if (self::$lang) { return self::$lang; } $langs = (array) self::get('active_languages', array()); self::$langCount = count($langs); $siteLang = JRequest::getString('vmlang', FALSE); //vmdebug('My $siteLang by JRequest::getString("vmlang",JRequest::getString("lang")) '.$siteLang); $params = JComponentHelper::getParams('com_languages'); $defaultLang = $params->get('site', 'en-GB'); //use default joomla if (JFactory::getApplication()->isSite()) { if (!$siteLang) { if (JVM_VERSION === 1) { // try to find in session lang // this work with joomfish j1.5 (application.data.lang) $session = JFactory::getSession(); $registry = $session->get('registry'); $siteLang = $registry->getValue('application.data.lang'); } else { jimport('joomla.language.helper'); $siteLang = JFactory::getLanguage()->getTag(); //vmdebug('My selected language by JFactory::getLanguage()->getTag() '.$siteLang); } } } else { if (!$siteLang) { $siteLang = $defaultLang; } } if (!in_array($siteLang, $langs)) { if (count($langs) === 0) { $siteLang = $defaultLang; } else { $siteLang = $langs[0]; } } self::$vmlangTag = self::$langTag = $siteLang; self::$vmlang = self::$lang = strtolower(strtr($siteLang, '-', '_')); vmdebug('Joomla Language tag: ' . $siteLang . ' Virtuemart is using for db ' . self::$lang); defined('VMLANG') or define('VMLANG', self::$lang); return self::$lang; }
public static function setdbLanguageTag() { if (self::$vmlang) { return self::$vmlang; } $langs = (array) self::get('active_languages', array()); self::$langCount = count($langs); $siteLang = vRequest::getString('vmlang', false); $params = JComponentHelper::getParams('com_languages'); $defaultLang = $params->get('site', 'en-GB'); //use default joomla if (JFactory::getApplication()->isSite()) { if (!$siteLang) { jimport('joomla.language.helper'); $siteLang = JFactory::getLanguage()->getTag(); } } else { if (!$siteLang) { $siteLang = $defaultLang; } } self::$vmLangSelected = $siteLang; if (!in_array($siteLang, $langs)) { if (count($langs) === 0) { $siteLang = $defaultLang; } else { $siteLang = $langs[0]; } } if (count($langs) > 1) { $lfbs = self::get('vm_lfbs'); vmdebug('my lfbs ' . $lfbs); if (!empty($lfbs)) { $fbsAssoc = false; $pairs = explode(';', $lfbs); if ($pairs and count($pairs) > 0) { $fbsAssoc = array(); foreach ($pairs as $pair) { $kv = explode('~', $pair); if ($kv and count($kv) === 2) { $fbsAssoc[$kv[0]] = $kv[1]; } } if (isset($fbsAssoc[$siteLang])) { $defaultLang = $fbsAssoc[$siteLang]; } } } } self::$vmlangTag = $siteLang; self::$vmlang = strtolower(strtr($siteLang, '-', '_')); self::$defaultLang = strtolower(strtr($defaultLang, '-', '_')); vmdebug('$siteLang: ' . $siteLang . ' self::$_jpConfig->lang ' . self::$vmlang . ' fb ' . self::$defaultLang); //@deprecated just fallback defined('VMLANG') or define('VMLANG', self::$vmlang); return self::$vmlang; }