Exemplo n.º 1
0
 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
Exemplo n.º 2
0
 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)
Exemplo n.º 3
0
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])
Exemplo n.º 4
0
 def set_language(self, language):
     if language == Locale.DEFAULT_TRANSLATION_STR:
         language = None
     self.glocale = Locale(lang=language)
     self._ = self.glocale.translation.gettext
Exemplo n.º 5
0
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
Exemplo n.º 6
0
 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)