Mercurial > p > roundup > code
diff roundup/cgi/templating.py @ 2558:cf52ad6788c8
TranslationService definitions moved to separate module;
global variable translationService is obsolecent:
it is not thread-safe, we must use client.translator
(or 'i18n' variable in template contexts) instead
| author | Alexander Smishlajev <a1s@users.sourceforge.net> |
|---|---|
| date | Sun, 11 Jul 2004 14:27:48 +0000 |
| parents | 9b9c8fb52732 |
| children | 0dd3dca6bd01 |
line wrap: on
line diff
--- a/roundup/cgi/templating.py Sun Jul 11 14:23:12 2004 +0000 +++ b/roundup/cgi/templating.py Sun Jul 11 14:27:48 2004 +0000 @@ -41,44 +41,13 @@ from roundup.cgi.PageTemplates import PageTemplate, GlobalTranslationService from roundup.cgi.PageTemplates.Expressions import getEngine from roundup.cgi.TAL import TALInterpreter -from roundup.cgi import ZTUtils +from roundup.cgi import TranslationService, ZTUtils ### i18n services - -class StaticTranslationService: - - """Translation service for application default language - - This service uses "static" translation, with single domain - and target language, initialized from OS environment when - roundup.i18n is loaded. - - 'domain' and 'target_language' parameters to 'translate()' - are ignored. - - Returned strings are always utf8-encoded. - - """ - - OUTPUT_ENCODING = "utf-8" - - def translate(self, domain, msgid, mapping=None, - context=None, target_language=None, default=None - ): - _msg = self.gettext(msgid) - #print ("TRANSLATE", msgid, _msg, mapping, context) - _msg = TALInterpreter.interpolate(_msg, mapping) - return _msg - - def gettext(self, msgid): - return i18n.ugettext(msgid).encode(self.OUTPUT_ENCODING) - - def ngettext(self, singular, plural, number): - return i18n.ungettext(singular, plural, number).encode( - self.OUTPUT_ENCODING) - -translationService = StaticTranslationService() - +# this global translation service is not thread-safe. +# it is left here for backward compatibility +# until all Web UI translations are done via client.translator object +translationService = TranslationService.get_translation() GlobalTranslationService.setGlobalTranslationService(translationService) ### templating
