15 private static $_yiiToJq = array(
33 private static $_jqLocales = array(
'af',
'ar',
'az',
'bg',
'bs',
'ca',
'cs',
'da',
'de-CH',
'de',
'el',
'en-GB',
'eo',
'es',
'et',
'eu',
'fa',
'fi',
'fo',
'fr-CH',
'fr',
'he',
'hr',
'hu',
'hy',
'id',
'is',
'it',
'ja',
'ko',
'lt',
'lv',
'ms',
'nl-BE',
'nl',
'no',
'pl',
'pt-BR',
'ro',
'ru',
'sk',
'sl',
'sq',
'sr-SR',
'sr',
'sv',
'ta',
'th',
'tr',
'uk',
'vi',
'zh-CN',
'zh-HK',
'zh-TW');
38 private static $_yiiToJqLocaleMap = array(
50 return self::convert(self::$_yiiToJq, $format);
53 private static function convert($substitution, $format)
55 if (empty($format))
return false;
63 if ($prevL != @$format[$i])
66 $singleFormat .= $format[$i];
70 if (isset($substitution[$singleFormat])) {
71 $format = substr_replace($format, $substitution[$singleFormat], $i - strlen($singleFormat), strlen($singleFormat));
72 $i += strlen($substitution[$singleFormat]) - strlen($singleFormat);
74 if (@$format[$i] ===
'')
87 if (empty($locale))
return false;
88 $parts = explode(
'_', $locale);
89 if ($parts[0] ==
'en')
91 elseif (count($parts) == 1)
93 elseif (count($parts) == 3) {
94 $locale = $parts[0] .
'_' . $parts[1];
96 if (isset(self::$_yiiToJqLocaleMap[$locale]))
97 $locale = self::$_yiiToJqLocaleMap[$locale];
99 $parts = explode(
'_', $locale);
100 $jqLocale = $parts[0];
101 $jqExtLocale = isset($parts[1]) ? $parts[0] .
'-' . strtoupper($parts[1]) : $parts[0];
102 if (in_array($jqExtLocale, self::$_jqLocales))
104 elseif (in_array($jqLocale, self::$_jqLocales))