Beispiel #1
0
def add_localizer(event):
    """ Localization event subscriber.

    Automaticaly translate strings in the templates.

    :param event: a ``pyramid.event.NewRequest`` object
    """
    def auto_translate(string):
        """ Use the message factory to translate strings."""
        return localizer.translate(MessageFactory(string))

    def gettext_translate(string):
        """ Translate untranslated strings with FormEncode."""
        # Try default translation first
        translation = localizer.old_translate(i18n.TranslationString(string))
        if translation == string:
            # translation failed then use FormEncode
            translation = formencode_api._stdtrans(string)
        return translation

    request = event.request
    localizer = i18n.get_localizer(request)
    request.localizer = localizer
    request.translate = auto_translate

    if not hasattr(localizer, "old_translate"):
        localizer.old_translate = localizer.translate
    locale_name = i18n.get_locale_name(request)
    formencode_api.set_stdtranslation(languages=[locale_name])
    localizer.translate = gettext_translate
Beispiel #2
0
def add_localizer(event):
    """ Localization event subscriber.

    Automaticaly translate strings in the templates.

    :param event: a ``pyramid.event.NewRequest`` object
    """
    def auto_translate(string):
        """ Use the message factory to translate strings."""
        return localizer.translate(MessageFactory(string))

    def gettext_translate(string):
        """ Translate untranslated strings with FormEncode."""
        # Try default translation first
        translation = localizer.old_translate(i18n.TranslationString(string))
        if translation == string:
            # translation failed then use FormEncode
            translation = formencode_api._stdtrans(string)
        return translation

    request = event.request
    localizer = i18n.get_localizer(request)
    request.localizer = localizer
    request.translate = auto_translate

    if not hasattr(localizer, "old_translate"):
        localizer.old_translate = localizer.translate
    locale_name = i18n.get_locale_name(request)
    formencode_api.set_stdtranslation(languages=[locale_name])
    localizer.translate = gettext_translate
Beispiel #3
0
    def __before__(self):
        if 'lang' in session:
            set_lang(session['lang'])
            set_stdtranslation(languages=['en','fa'])
        else:
            set_lang('fa')
            session['lang']='fa'
            session.save()

        h.setMenuItems(_('menus.dat'))
        self.menu_items = session[_('menus.dat')]
Beispiel #4
0
    def __before__(self):
        if "photos" not in session:
            session["photos"] = {}
            session["photos"]["files"] = []

        if "lang" in session:
            set_lang(session["lang"])
            set_stdtranslation(languages=["en", "fa"])
        else:
            set_lang("fa")
            session["lang"] = "fa"
            session.save()

        h.setMenuItems(_("menus.dat"))
        self.menu_items = session[_("menus.dat")]
Beispiel #5
0
    def setUp(self):
        super(self.__class__, self).setUp()
        self.mail = '*****@*****.**'
        self.values = dict(displayname='Mariano Cortesi',
                           email=self.mail,
                           username='******',
                           password='******',
                           password_confirm='pwd')

        # force language (en) for tests where validation message
        # might be translated with gettext; see: http://formencode.org/
        # Validator.html#localization-of-error-messages-i18n
        set_stdtranslation(domain="FormEncode", languages=["en"])

        # check no user in db
        assert User.query.filter_by(email=self.mail).count() == 0
        self.response = self.app.get(url_for(controller='website/users'))
Beispiel #6
0
from twisted.web.server import Site
from txlongpoll.client import AMQFactory
from txlongpoll.frontend import (
    FrontEndAjax,
    DeprecatedQueueManager,
)
from txlongpoll.services import (
    LogService,
    OOPSService,
)
import yaml
from zope.interface import implements

# Ensure that formencode does not translate strings; there are encoding issues
# that are easier to side-step for now.
set_stdtranslation(languages=[])


class ConfigOops(Schema):
    """Configuration validator for OOPS options."""

    if_key_missing = None

    directory = String(if_missing=b"")
    reporter = String(if_missing=b"LONGPOLL")

    chained_validators = (RequireIfPresent("reporter", present="directory"), )


class ConfigBroker(Schema):
    """Configuration validator for message broker options."""