def set_locale(self, language): """ Set the translator to one selected with stdoptions.add_localization_option(). """ if language == Locale.DEFAULT_TRANSLATION_STR: language = None locale = Locale(lang=language) self._ = locale.translation.sgettext self._get_date = locale.get_date self._get_type = locale.get_type self._ldd = locale.date_displayer self._name_display = NameDisplay(locale) # a legacy/historical name self._name_display.set_name_format(self.database.name_formats) fmt_default = config.get('preferences.name-format') self._name_display.set_default_format(fmt_default) return locale
def func(*args, **kwargs): if user not in self.user_data: try: user_data = self.database.get_user_data(user) except: user_data = {} if user_data: self.user_data[user] = user_data else: self.user_data[user] = {} if "language" in self.user_data[user] and self.user_data[user]["language"]: self.user_data[user]["glocale"] = Locale(lang=self.user_data[user]["language"]) self.user_data[user]["_"] = self.user_data[user]["glocale"].translation.gettext else: self.user_data[user]["language"] = "en" self.user_data[user]["glocale"] = Locale self.user_data[user]["_"] = _ return self.user_data[user]["_"](*args, **kwargs)
def register_datehandler(locales,parse_class,display_class): """ Registers the passed date parser class and date displayer classes with the specified language locales. Set the parser_class and display_class ._locale attribute to the corresponding :class:`.Locale` object. :param locales: tuple of strings containing language codes. The character encoding is not included, so the language should be in the form of fr_FR, not fr_FR.utf8 :type locales: tuple :param parse_class: Class to be associated with parsing :type parse_class: :class:`.DateParser` :param display_class: Class to be associated with displaying :type display_class: :class:`.DateDisplay` """ for lang_str in locales: LANG_TO_PARSER[lang_str] = parse_class LANG_TO_DISPLAY[lang_str] = display_class parse_class._locale = display_class._locale = Locale(lang=locales[0])
def set_language(self, language): if language == Locale.DEFAULT_TRANSLATION_STR: language = None self.glocale = Locale(lang=language) self._ = self.glocale.translation.gettext
TIP_DATA = os.path.join(DATA_DIR, "tips.xml") PAPERSIZE = os.path.join(DATA_DIR, "papersize.xml") ICON = os.path.join(IMAGE_DIR, "gramps.png") LOGO = os.path.join(IMAGE_DIR, "logo.png") SPLASH = os.path.join(IMAGE_DIR, "splash.jpg") LICENSE_FILE = os.path.join(DATA_DIR, 'LICENSE') #------------------------------------------------------------------------- # # Init Localization # #------------------------------------------------------------------------- LOCALE = Locale(localedir=_resources.locale_dir) _ = LOCALE.translation.sgettext #------------------------------------------------------------------------- # # About box information # #------------------------------------------------------------------------- COPYRIGHT_MSG = ("© 2001-2006 Donald N. Allingham\n" + "© 2007-2016 The Gramps Developers\n" "© 2016 The gPrime Developers\n") COMMENTS = _("gPrime is a web-based genealogy program.") #------------------------------------------------------------------------- # # Constants
def __init__(self, options, database, settings=None): import gprime.const from gprime.utils.locale import Locale, _ self.options = options if settings is None: settings = self.default_settings() if options.language is None: self.glocale = Locale self._ = _ else: self.glocale = Locale(lang=options.language) self._ = self.glocale.translation.gettext self.database = database self.sitename = self.options.sitename super().__init__([ url(r"/", HomeHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="main"), url(r'/login', LoginHandler, { "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="login"), url(r'/logout', LogoutHandler, { "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="logout"), url(r'/(.*)/(.*)/delete', DeleteHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, ), url(r'/action/?(.*)', ActionHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="action"), url(r'/person/?(.*)', PersonHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="person"), url(r'/note/?(.*)', NoteHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="note"), url(r'/family/?(.*)', FamilyHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="family"), url(r'/citation/?(.*)', CitationHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="citation"), url(r'/event/?(.*)', EventHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="event"), url(r'/media/?(.*)', MediaHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="media"), url(r'/place/?(.*)', PlaceHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="place"), url(r'/repository/?(.*)', RepositoryHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="repository"), url(r'/source/?(.*)', SourceHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="source"), url(r'/tag/?(.*)', TagHandler, { "database": self.database, "sitename": self.sitename, "opts" : self.options, "glocale": self.glocale, "_": self._, }, name="tag"), url(r'/imageserver/(.*)', ImageHandler, { "database": self.database, "opts" : self.options, "SITE_DIR": self.options.site_dir, "PORT": self.options.port, "HOSTNAME": self.options.hostname, "GET_IMAGE_FN": self.get_image_path_from_handle, "sitename": self.sitename, "glocale": self.glocale, "_": self._, }, name="imageserver", ), url(r"/json/", JsonHandler, { "database": self.database, } ), url(r"/data/(.*)", StaticFileHandler, { 'path': gprime.const.DATA_DIR, }), url(r"/css/(.*)", StaticFileHandler, { 'path': os.path.join(gprime.const.DATA_DIR, "css"), }), url(r"/js/(.*)", StaticFileHandler, { 'path': os.path.join(gprime.const.DATA_DIR, "javascript"), }), url(r"/images/(.*)", StaticFileHandler, { 'path': gprime.const.IMAGE_DIR, }), url(r"/img/(.*)", StaticFileHandler, # CSS images { 'path': os.path.join(gprime.const.DATA_DIR, "img"), }), ], **settings)