momentjs.py 772 B

1234567891011121314151617181920212223242526272829303132333435
  1. import os
  2. from path import Path
  3. __all__ = ['list_available_locales', 'get_locale_path']
  4. def list_available_locales():
  5. misago_dir = os.path.dirname(os.path.dirname(__file__))
  6. locales_dir = os.path.join(
  7. misago_dir, os.path.join(misago_dir, 'locale'), 'momentjs')
  8. locales = {}
  9. for locale in Path(locales_dir).files('*.js'):
  10. locales[locale.basename()[:-3]] = locale
  11. return locales
  12. def get_locale_path(language):
  13. locales = list_available_locales()
  14. # first try: literal match
  15. if language in locales:
  16. return locales[language]
  17. # second try: fallback to macrolanguage
  18. language = language.split('-')[0]
  19. if language in locales:
  20. return locales[language]
  21. # nothing was found
  22. return None