[MERGE] improve the tools.misc.scan_languages function
authorStephane Wirtel <stw@openerp.com>
Wed, 12 Sep 2012 10:47:13 +0000 (12:47 +0200)
committerStephane Wirtel <stw@openerp.com>
Wed, 12 Sep 2012 10:47:13 +0000 (12:47 +0200)
bzr revid: stw@openerp.com-20120912104713-jhvkxp9egpchs2ti

1  2 
openerp/addons/base/res/res_lang.py
openerp/tools/misc.py

Simple merge
@@@ -606,99 -550,95 +606,95 @@@ def get_iso_codes(lang)
              lang = lang.split('_')[0]
      return lang
  
- def get_languages():
-     # The codes below are those from Launchpad's Rosetta, with the exception
-     # of some trivial codes where the Launchpad code is xx and we have xx_XX.
-     languages={
+ ALL_LANGUAGES = {
 -    'ab_RU': u'Abkhazian / аҧсуа',
 -    'ar_AR': u'Arabic / الْعَرَبيّة',
 -    'bg_BG': u'Bulgarian / български език',
 -    'bs_BS': u'Bosnian / bosanski jezik',
 -    'ca_ES': u'Catalan / Català',
 -    'cs_CZ': u'Czech / Čeština',
 -    'da_DK': u'Danish / Dansk',
 -    'de_DE': u'German / Deutsch',
 -    'el_GR': u'Greek / Ελληνικά',
 -    'en_CA': u'English (CA)',
 -    'en_GB': u'English (UK)',
 -    'en_US': u'English (US)',
 -    'es_AR': u'Spanish (AR) / Español (AR)',
 -    'es_BO': u'Spanish (BO) / Español (BO)',
 -    'es_CL': u'Spanish (CL) / Español (CL)',
 -    'es_CO': u'Spanish (CO) / Español (CO)',
 -    'es_CR': u'Spanish (CR) / Español (CR)',
 -    'es_DO': u'Spanish (DO) / Español (DO)',
 -    'es_EC': u'Spanish (EC) / Español (EC)',
 -    'es_ES': u'Spanish / Español',
 -    'es_GT': u'Spanish (GT) / Español (GT)',
 -    'es_HN': u'Spanish (HN) / Español (HN)',
 -    'es_MX': u'Spanish (MX) / Español (MX)',
 -    'es_NI': u'Spanish (NI) / Español (NI)',
 -    'es_PA': u'Spanish (PA) / Español (PA)',
 -    'es_PE': u'Spanish (PE) / Español (PE)',
 -    'es_PR': u'Spanish (PR) / Español (PR)',
 -    'es_PY': u'Spanish (PY) / Español (PY)',
 -    'es_SV': u'Spanish (SV) / Español (SV)',
 -    'es_UY': u'Spanish (UY) / Español (UY)',
 -    'es_VE': u'Spanish (VE) / Español (VE)',
 -    'et_EE': u'Estonian / Eesti keel',
 -    'fa_IR': u'Persian / فارس',
 -    'fi_FI': u'Finnish / Suomi',
 -    'fr_BE': u'French (BE) / Français (BE)',
 -    'fr_CH': u'French (CH) / Français (CH)',
 -    'fr_FR': u'French / Français',
 -    'gl_ES': u'Galician / Galego',
 -    'gu_IN': u'Gujarati / ગુજરાતી',
 -    'he_IL': u'Hebrew / עִבְרִי',
 -    'hi_IN': u'Hindi / हिंदी',
 -    'hr_HR': u'Croatian / hrvatski jezik',
 -    'hu_HU': u'Hungarian / Magyar',
 -    'id_ID': u'Indonesian / Bahasa Indonesia',
 -    'it_IT': u'Italian / Italiano',
 -    'iu_CA': u'Inuktitut / ᐃᓄᒃᑎᑐᑦ',
 -    'ja_JP': u'Japanese / 日本語',
 -    'ko_KP': u'Korean (KP) / 한국어 (KP)',
 -    'ko_KR': u'Korean (KR) / 한국어 (KR)',
 -    'lt_LT': u'Lithuanian / Lietuvių kalba',
 -    'lv_LV': u'Latvian / latviešu valoda',
 -    'ml_IN': u'Malayalam / മലയാളം',
 -    'mn_MN': u'Mongolian / монгол',
 -    'nb_NO': u'Norwegian Bokmål / Norsk bokmål',
 -    'nl_NL': u'Dutch / Nederlands',
 -    'nl_BE': u'Flemish (BE) / Vlaams (BE)',
 -    'oc_FR': u'Occitan (FR, post 1500) / Occitan',
 -    'pl_PL': u'Polish / Język polski',
 -    'pt_BR': u'Portugese (BR) / Português (BR)',
 -    'pt_PT': u'Portugese / Português',
 -    'ro_RO': u'Romanian / română',
 -    'ru_RU': u'Russian / русский язык',
 -    'si_LK': u'Sinhalese / සිංහල',
 -    'sl_SI': u'Slovenian / slovenščina',
 -    'sk_SK': u'Slovak / Slovenský jazyk',
 -    'sq_AL': u'Albanian / Shqip',
 -    'sr_RS': u'Serbian (Cyrillic) / српски',
 -    'sr@latin': u'Serbian (Latin) / srpski',
 -    'sv_SE': u'Swedish / svenska',
 -    'te_IN': u'Telugu / తెలుగు',
 -    'tr_TR': u'Turkish / Türkçe',
 -    'vi_VN': u'Vietnamese / Tiếng Việt',
 -    'uk_UA': u'Ukrainian / українська',
 -    'ur_PK': u'Urdu / اردو',
 -    'zh_CN': u'Chinese (CN) / 简体中文',
 -    'zh_HK': u'Chinese (HK)',
 -    'zh_TW': u'Chinese (TW) / 正體字',
 -    'th_TH': u'Thai / ภาษาไทย',
 -    'tlh_TLH': u'Klingon',
 -}
 +        'ab_RU': u'Abkhazian / аҧсуа',
 +        'ar_AR': u'Arabic / الْعَرَبيّة',
 +        'bg_BG': u'Bulgarian / български език',
 +        'bs_BS': u'Bosnian / bosanski jezik',
 +        'ca_ES': u'Catalan / Català',
 +        'cs_CZ': u'Czech / Čeština',
 +        'da_DK': u'Danish / Dansk',
 +        'de_DE': u'German / Deutsch',
 +        'el_GR': u'Greek / Ελληνικά',
 +        'en_CA': u'English (CA)',
 +        'en_GB': u'English (UK)',
 +        'en_US': u'English (US)',
 +        'es_AR': u'Spanish (AR) / Español (AR)',
 +        'es_BO': u'Spanish (BO) / Español (BO)',
 +        'es_CL': u'Spanish (CL) / Español (CL)',
 +        'es_CO': u'Spanish (CO) / Español (CO)',
 +        'es_CR': u'Spanish (CR) / Español (CR)',
 +        'es_DO': u'Spanish (DO) / Español (DO)',
 +        'es_EC': u'Spanish (EC) / Español (EC)',
 +        'es_ES': u'Spanish / Español',
 +        'es_GT': u'Spanish (GT) / Español (GT)',
 +        'es_HN': u'Spanish (HN) / Español (HN)',
 +        'es_MX': u'Spanish (MX) / Español (MX)',
 +        'es_NI': u'Spanish (NI) / Español (NI)',
 +        'es_PA': u'Spanish (PA) / Español (PA)',
 +        'es_PE': u'Spanish (PE) / Español (PE)',
 +        'es_PR': u'Spanish (PR) / Español (PR)',
 +        'es_PY': u'Spanish (PY) / Español (PY)',
 +        'es_SV': u'Spanish (SV) / Español (SV)',
 +        'es_UY': u'Spanish (UY) / Español (UY)',
 +        'es_VE': u'Spanish (VE) / Español (VE)',
 +        'et_EE': u'Estonian / Eesti keel',
 +        'fa_IR': u'Persian / فارس',
 +        'fi_FI': u'Finnish / Suomi',
 +        'fr_BE': u'French (BE) / Français (BE)',
 +        'fr_CH': u'French (CH) / Français (CH)',
 +        'fr_FR': u'French / Français',
 +        'gl_ES': u'Galician / Galego',
 +        'gu_IN': u'Gujarati / ગુજરાતી',
 +        'he_IL': u'Hebrew / עִבְרִי',
 +        'hi_IN': u'Hindi / हिंदी',
 +        'hr_HR': u'Croatian / hrvatski jezik',
 +        'hu_HU': u'Hungarian / Magyar',
 +        'id_ID': u'Indonesian / Bahasa Indonesia',
 +        'it_IT': u'Italian / Italiano',
 +        'iu_CA': u'Inuktitut / ᐃᓄᒃᑎᑐᑦ',
 +        'ja_JP': u'Japanese / 日本語',
 +        'ko_KP': u'Korean (KP) / 한국어 (KP)',
 +        'ko_KR': u'Korean (KR) / 한국어 (KR)',
 +        'lt_LT': u'Lithuanian / Lietuvių kalba',
 +        'lv_LV': u'Latvian / latviešu valoda',
 +        'ml_IN': u'Malayalam / മലയാളം',
 +        'mn_MN': u'Mongolian / монгол',
 +        'nb_NO': u'Norwegian Bokmål / Norsk bokmål',
 +        'nl_NL': u'Dutch / Nederlands',
 +        'nl_BE': u'Flemish (BE) / Vlaams (BE)',
 +        'oc_FR': u'Occitan (FR, post 1500) / Occitan',
 +        'pl_PL': u'Polish / Język polski',
 +        'pt_BR': u'Portuguese (BR) / Português (BR)',
 +        'pt_PT': u'Portuguese / Português',
 +        'ro_RO': u'Romanian / română',
 +        'ru_RU': u'Russian / русский язык',
 +        'si_LK': u'Sinhalese / සිංහල',
 +        'sl_SI': u'Slovenian / slovenščina',
 +        'sk_SK': u'Slovak / Slovenský jazyk',
 +        'sq_AL': u'Albanian / Shqip',
 +        'sr_RS': u'Serbian (Cyrillic) / српски',
 +        'sr@latin': u'Serbian (Latin) / srpski',
 +        'sv_SE': u'Swedish / svenska',
 +        'te_IN': u'Telugu / తెలుగు',
 +        'tr_TR': u'Turkish / Türkçe',
 +        'vi_VN': u'Vietnamese / Tiếng Việt',
 +        'uk_UA': u'Ukrainian / українська',
 +        'ur_PK': u'Urdu / اردو',
 +        'zh_CN': u'Chinese (CN) / 简体中文',
 +        'zh_HK': u'Chinese (HK)',
 +        'zh_TW': u'Chinese (TW) / 正體字',
 +        'th_TH': u'Thai / ภาษาไทย',
 +        'tlh_TLH': u'Klingon',
 +    }
-     return languages
  
  def scan_languages():
-     # Now it will take all languages from get languages function without filter it with base module languages
-     lang_dict = get_languages()
-     ret = [(lang, lang_dict.get(lang, lang)) for lang in list(lang_dict)]
-     ret.sort(key=lambda k:k[1])
-     return ret
+     """ Returns all languages supported by OpenERP for translation
  
+     :returns: a list of (lang_code, lang_name) pairs
+     :rtype: [(str, unicode)]
+     """
+     return sorted(ALL_LANGUAGES.iteritems(), key=lambda k: k[1])
  
  def get_user_companies(cr, user):
      def _get_company_children(cr, ids):