aboutsummaryrefslogtreecommitdiffstats
path: root/debug_toolbar/panels/settings.py
blob: b7af57dc991fa80f4bb5929c9a3cc8326c6edf52 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from __future__ import absolute_import, unicode_literals

from django.conf import settings
from django.views.debug import get_safe_settings
from django.utils.translation import ugettext_lazy as _
from django.utils.datastructures import SortedDict

from debug_toolbar.panels import Panel


class SettingsPanel(Panel):
    """
    A panel to display all variables in django.conf.settings
    """
    name = 'Settings'
    template = 'debug_toolbar/panels/settings.html'
    has_content = True

    def nav_title(self):
        return _('Settings')

    def title(self):
        return _('Settings from <code>%s</code>') % settings.SETTINGS_MODULE

    def process_response(self, request, response):
        self.record_stats({
            'settings': SortedDict(sorted(get_safe_settings().items(), key=lambda s: s[0])),
        })