Exemplo n.º 1
0
def metadata():
    locale = get_locale()
    enable_cache(vary_user=False)

    auth = {}
    if settings.PASSWORD_LOGIN:
        auth['password_login_uri'] = url_for('sessions_api.password_login')
        auth['registration_uri'] = url_for('roles_api.create_code')
    if settings.OAUTH:
        auth['oauth_uri'] = url_for('sessions_api.oauth_init')

    country_names = {}
    for code, label in countries.names.items():
        country_names[code] = locale.territories.get(code.upper(), label)

    language_names = {}
    for code, label in languages.names.items():
        language_names[code] = locale.languages.get(code, label)

    return jsonify({
        'status': 'ok',
        'maintenance': request.authz.in_maintenance,
        'app': {
            'title': settings.APP_TITLE,
            'version': __version__,
            'ui_uri': six.text_type(app_ui_url),
            'samples': settings.SAMPLE_SEARCHES,
            'logo': settings.APP_LOGO,
            'favicon': settings.APP_FAVICON,
            'locale': six.text_type(locale),
            'locales': settings.UI_LANGUAGES
        },
        'categories': Collection.CATEGORIES,
        'statistics': get_instance_stats(Authz()),
        'countries': country_names,
        'languages': language_names,
        'schemata': model,
        'auth': auth
    })
Exemplo n.º 2
0
def statistics():
    enable_cache(vary_user=True)
    return jsonify(get_instance_stats(request.authz))
Exemplo n.º 3
0
def statistics():
    enable_cache()
    return jsonify(get_instance_stats(request.authz))