| | <?php |
| |
|
| | namespace Kanboard\Model; |
| |
|
| | use Kanboard\Core\Base; |
| | use Kanboard\Core\Translator; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class LanguageModel extends Base |
| | { |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public static function getCodes() |
| | { |
| | return array( |
| | 'id_ID', |
| | 'bg_BG', |
| | 'bs_BA', |
| | 'ca_ES', |
| | 'cs_CZ', |
| | 'da_DK', |
| | 'de_DE', |
| | 'de_DE_du', |
| | 'en_GB', |
| | 'en_US', |
| | 'es_ES', |
| | 'es_VE', |
| | 'fr_FR', |
| | 'el_GR', |
| | 'it_IT', |
| | 'hr_HR', |
| | 'hu_HU', |
| | 'mk_MK', |
| | 'my_MY', |
| | 'nl_NL', |
| | 'nb_NO', |
| | 'pl_PL', |
| | 'pt_PT', |
| | 'pt_BR', |
| | 'ro_RO', |
| | 'ru_RU', |
| | 'sr_Latn_RS', |
| | 'fi_FI', |
| | 'sk_SK', |
| | 'sv_SE', |
| | 'tr_TR', |
| | 'uk_UA', |
| | 'ko_KR', |
| | 'zh_CN', |
| | 'zh_TW', |
| | 'ja_JP', |
| | 'th_TH', |
| | 'vi_VN', |
| | 'fa_IR', |
| | ); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public static function findCode($code) |
| | { |
| | $code = str_replace('-', '_', $code); |
| | return in_array($code, self::getCodes()) ? $code : ''; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getLanguages($prepend = false) |
| | { |
| | |
| | $languages = array( |
| | 'id_ID' => 'Bahasa Indonesia', |
| | 'bg_BG' => 'Български', |
| | 'bs_BA' => 'Bosanski', |
| | 'ca_ES' => 'Català', |
| | 'cs_CZ' => 'Čeština', |
| | 'da_DK' => 'Dansk', |
| | 'de_DE' => 'Deutsch (Sie)', |
| | 'de_DE_du' => 'Deutsch (du)', |
| | 'en_GB' => 'English (GB)', |
| | 'en_US' => 'English (US)', |
| | 'es_ES' => 'Español (España)', |
| | 'es_VE' => 'Español (Venezuela)', |
| | 'fr_FR' => 'Français', |
| | 'el_GR' => 'Grec', |
| | 'hr_HR' => 'Hrvatski', |
| | 'it_IT' => 'Italiano', |
| | 'hu_HU' => 'Magyar', |
| | 'mk_MK' => 'Македонски', |
| | 'my_MY' => 'Melayu', |
| | 'nl_NL' => 'Nederlands', |
| | 'nb_NO' => 'Norsk', |
| | 'pl_PL' => 'Polski', |
| | 'pt_PT' => 'Português', |
| | 'pt_BR' => 'Português (Brasil)', |
| | 'ro_RO' => 'Română', |
| | 'ru_RU' => 'Русский', |
| | 'sr_Latn_RS' => 'Srpski', |
| | 'fi_FI' => 'Suomi', |
| | 'sk_SK' => 'Slovenčina', |
| | 'sv_SE' => 'Svenska', |
| | 'tr_TR' => 'Türkçe', |
| | 'uk_UA' => 'Українська', |
| | 'ko_KR' => '한국어', |
| | 'zh_CN' => '中文(简体)', |
| | 'zh_TW' => '中文(繁體)', |
| | 'ja_JP' => '日本語', |
| | 'th_TH' => 'ไทย', |
| | 'vi_VN' => 'Tiếng Việt', |
| | 'fa_IR' => 'فارسی', |
| | ); |
| |
|
| | if ($prepend) { |
| | return array('' => t('Application default')) + $languages; |
| | } |
| |
|
| | return $languages; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getJsLanguageCode() |
| | { |
| | $languages = array( |
| | 'bg_BG' => 'bg', |
| | 'cs_CZ' => 'cs', |
| | 'ca_ES' => 'ca', |
| | 'da_DK' => 'da', |
| | 'de_DE' => 'de', |
| | 'de_DE_du' => 'de', |
| | 'en_GB' => 'en-GB', |
| | 'en_US' => 'en', |
| | 'es_ES' => 'es', |
| | 'es_VE' => 'es', |
| | 'fr_FR' => 'fr', |
| | 'it_IT' => 'it', |
| | 'hr_HR' => 'hr', |
| | 'hu_HU' => 'hu', |
| | 'nl_NL' => 'nl', |
| | 'nb_NO' => 'no', |
| | 'pl_PL' => 'pl', |
| | 'pt_PT' => 'pt', |
| | 'pt_BR' => 'pt-BR', |
| | 'ro_RO' => 'ro', |
| | 'ru_RU' => 'ru', |
| | 'sr_Latn_RS' => 'sr', |
| | 'fi_FI' => 'fi', |
| | 'sk_SK' => 'sk', |
| | 'sv_SE' => 'sv', |
| | 'tr_TR' => 'tr', |
| | 'uk_UA' => 'uk', |
| | 'ko_KR' => 'ko', |
| | 'zh_CN' => 'zh-CN', |
| | 'zh_TW' => 'zh-TW', |
| | 'ja_JP' => 'ja', |
| | 'th_TH' => 'th', |
| | 'id_ID' => 'id', |
| | 'el_GR' => 'el', |
| | 'fa_IR' => 'fa', |
| | 'vi_VN' => 'vi', |
| | 'bs_BA' => 'bs', |
| | 'mk_MK' => 'mk', |
| | 'my_MY' => 'my', |
| | ); |
| |
|
| | $lang = $this->getCurrentLanguage(); |
| |
|
| | return isset($languages[$lang]) ? $languages[$lang] : 'en'; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getCurrentLanguage() |
| | { |
| | return $this->userSession->getLanguage() ?: $this->configModel->get('application_language', 'en_US'); |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | public function loadCurrentLanguage() |
| | { |
| | Translator::load($this->getCurrentLanguage()); |
| | } |
| | } |
| |
|