コード例 #1
0
def remove_globals():
    # oddly enough popping "pylons.app_globals" was not enough to clear the
    # cached settings in all case (tests) so we do that explicitely.
    if is_object_registered(pylons.app_globals):
        pylons.app_globals.settings_cache.clear()
    for name in ('request', 'response', 'session', 'tmpl_context', 'url',
                 'translator', 'app_globals', ):
        global_ = getattr(pylons, name)
        if is_object_registered(global_):
            global_._pop_object()
コード例 #2
0
def remove_globals():
    # oddly enough popping "pylons.app_globals" was not enough to clear the
    # cached settings in all case (tests) so we do that explicitely.
    if is_object_registered(pylons.app_globals):
        pylons.app_globals.settings_cache.clear()
    for name in (
            'request',
            'response',
            'session',
            'tmpl_context',
            'url',
            'translator',
            'app_globals',
    ):
        global_ = getattr(pylons, name)
        if is_object_registered(global_):
            global_._pop_object()
コード例 #3
0
def _paste_registry(pylons_request):
    "Internal helper method to get a new registry."
    paste_registry = None
    is_request_registered = is_object_registered(pylons_request)
    if is_request_registered:
        paste_registry = pylons_request.environ.get('paste.registry')
    if paste_registry is None:
        paste_registry = Registry()
        paste_registry.prepare()
        if is_request_registered:
            pylons_request.environ['paste.registry'] = paste_registry
    return paste_registry
コード例 #4
0
def _paste_registry(pylons_request):
    "Internal helper method to get a new registry."
    paste_registry = None
    is_request_registered = is_object_registered(pylons_request)
    if is_request_registered:
        paste_registry = pylons_request.environ.get('paste.registry')
    if paste_registry is None:
        paste_registry = Registry()
        paste_registry.prepare()
        if is_request_registered:
            pylons_request.environ['paste.registry'] = paste_registry
    return paste_registry
コード例 #5
0
ファイル: i18n.py プロジェクト: MatrixFrog/mediadrop
def setup_global_translator(default_language='en', registry=None):
    """Load the primary translator during the first call of this function and
    reactivate it for each subsequent call until the primary language is
    changed."""
    app_globs = pylons.app_globals._current_obj()
    lang = app_globs.settings['primary_language'] or default_language
    if app_globs.primary_language == lang and app_globs.primary_translator:
        translator = app_globs.primary_translator
    else:
        translator = Translator(lang, pylons.config['locale_dirs'])
        app_globs.primary_translator = translator
        app_globs.primary_language = lang

    # no need to replace the translator if it uses the same domain anyway
    if is_object_registered(pylons.translator):
        pylons_translator = pylons.translator._current_obj()
        uses_same_locale = (getattr(pylons_translator, 'locale', None) == translator.locale)
        if uses_same_locale:
            return
    registry.register(pylons.translator, translator)
コード例 #6
0
ファイル: i18n.py プロジェクト: z0x010/mediadrop
def setup_global_translator(default_language='en', registry=None):
    """Load the primary translator during the first call of this function and
    reactivate it for each subsequent call until the primary language is
    changed."""
    app_globs = pylons.app_globals._current_obj()
    lang = app_globs.settings['primary_language'] or default_language
    if app_globs.primary_language == lang and app_globs.primary_translator:
        translator = app_globs.primary_translator
    else:
        translator = Translator(lang, pylons.config['locale_dirs'])
        app_globs.primary_translator = translator
        app_globs.primary_language = lang

    # no need to replace the translator if it uses the same domain anyway
    if is_object_registered(pylons.translator):
        pylons_translator = pylons.translator._current_obj()
        uses_same_locale = (getattr(pylons_translator, 'locale', None) == translator.locale)
        if uses_same_locale:
            return
    registry.register(pylons.translator, translator)
コード例 #7
0
def register_instance(registry, symbol_name, value):
    global_value = getattr(pylons, symbol_name)
    if not is_object_registered(global_value):
        registry.register(global_value, value)
    else:
        global_value._push_object(value)
コード例 #8
0
def register_instance(registry, symbol_name, value):
    global_value = getattr(pylons, symbol_name)
    if not is_object_registered(global_value):
        registry.register(global_value, value)
    else:
        global_value._push_object(value)