forked from CGM_Public/pretix_original
Fixed #83 -- Added an informal German translation
This commit is contained in:
@@ -36,8 +36,14 @@ class LazyI18nString:
|
||||
return ""
|
||||
if isinstance(self.data, dict):
|
||||
lng = translation.get_language()
|
||||
firstpart = lng.split('-')[0]
|
||||
similar = [l for l in self.data.keys() if l.startswith(firstpart + "-")]
|
||||
if lng in self.data and self.data[lng]:
|
||||
return self.data[lng]
|
||||
elif firstpart in self.data:
|
||||
return self.data[firstpart]
|
||||
elif similar:
|
||||
return self.data[similar[0]]
|
||||
elif settings.LANGUAGE_CODE in self.data and self.data[settings.LANGUAGE_CODE]:
|
||||
return self.data[settings.LANGUAGE_CODE]
|
||||
elif len(self.data):
|
||||
|
||||
@@ -26,7 +26,15 @@ class LocaleMiddleware(BaseLocaleMiddleware):
|
||||
language = get_language_from_request(request)
|
||||
if hasattr(request, 'event') and not request.path.startswith(get_script_prefix() + 'control'):
|
||||
if language not in request.event.settings.locales:
|
||||
language = request.event.settings.locale
|
||||
firstpart = language.split('-')[0]
|
||||
if firstpart in request.event.settings.locales:
|
||||
language = firstpart
|
||||
else:
|
||||
language = request.event.settings.locale
|
||||
for lang in request.event.settings.locales:
|
||||
if lang == firstpart or lang.startswith(firstpart + '-'):
|
||||
language = lang
|
||||
break
|
||||
translation.activate(language)
|
||||
request.LANGUAGE_CODE = translation.get_language()
|
||||
|
||||
|
||||
@@ -170,8 +170,23 @@ LOCALE_PATHS = (
|
||||
LANGUAGES = (
|
||||
('en', _('English')),
|
||||
('de', _('German')),
|
||||
('de-informal', _('German (informal)')),
|
||||
)
|
||||
|
||||
EXTRA_LANG_INFO = {
|
||||
'de-informal': {
|
||||
'bidi': False,
|
||||
'code': 'de-informal',
|
||||
'name': 'German (informal)',
|
||||
'name_local': 'Deutsch (Du)'
|
||||
},
|
||||
}
|
||||
|
||||
# Add custom languages not provided by Django
|
||||
import django.conf.locale
|
||||
django.conf.locale.LANG_INFO.update(EXTRA_LANG_INFO)
|
||||
|
||||
|
||||
AUTH_USER_MODEL = 'pretixbase.User'
|
||||
LOGIN_URL = '/login' # global login does not yet exist
|
||||
LOGIN_URL_CONTROL = 'control:auth.login'
|
||||
|
||||
Reference in New Issue
Block a user