diff options
| author | Bryan Chow | 2010-03-03 16:02:19 -0800 | 
|---|---|---|
| committer | Bryan Chow | 2010-03-03 16:02:19 -0800 | 
| commit | d05dcbb4aa93b1ce9d097ed8d537f06eb2491f5e (patch) | |
| tree | dc8335f4eb9f127037e74914fe792a567553f212 /debug_toolbar/panels/version.py | |
| parent | 7e8a4e195d4b0e3cabf0742b31e087a81712d12f (diff) | |
| download | django-debug-toolbar-d05dcbb4aa93b1ce9d097ed8d537f06eb2491f5e.tar.bz2 | |
Factor versions data out of VersionDebugPanel.
Diffstat (limited to 'debug_toolbar/panels/version.py')
| -rw-r--r-- | debug_toolbar/panels/version.py | 42 | 
1 files changed, 9 insertions, 33 deletions
| diff --git a/debug_toolbar/panels/version.py b/debug_toolbar/panels/version.py index 098ab62..5f6aa49 100644 --- a/debug_toolbar/panels/version.py +++ b/debug_toolbar/panels/version.py @@ -1,13 +1,7 @@ -import sys - -import django -from django.conf import settings  from django.template.loader import render_to_string  from django.utils.translation import ugettext_lazy as _ - -import debug_toolbar  from debug_toolbar.panels import DebugPanel - +from debug_toolbar.debug.version import DebugVersions  class VersionDebugPanel(DebugPanel):      """ @@ -16,44 +10,26 @@ class VersionDebugPanel(DebugPanel):      name = 'Version'      has_content = True +    def __init__(self, context={}): +        super(VersionDebugPanel, self).__init__(context) +        self.debug_version = DebugVersions() +      def nav_title(self):          return _('Versions')      def nav_subtitle(self): -        return 'Django %s' % django.get_version() +        return 'Django %s' % self.debug_version.django_version()      def url(self):          return '' -     +      def title(self):          return _('Versions')      def content(self): -        versions = {} -        for app in settings.INSTALLED_APPS + ['django']: -            name = app.split('.')[-1].replace('_', ' ').capitalize() -            __import__(app) -            app = sys.modules[app] -            if hasattr(app, 'get_version'): -                get_version = app.get_version -                if callable(get_version): -                    version = get_version() -                else: -                    version = get_version -            elif hasattr(app, 'VERSION'): -                version = app.VERSION -            elif hasattr(app, '__version__'): -                version = app.__version__ -            else: -                continue -            if isinstance(version, (list, tuple)): -                version = '.'.join(str(o) for o in version) -            versions[name] = version -          context = self.context.copy()          context.update({ -            'versions': versions, -            'paths': sys.path, +            'versions': self.debug_version.get_versions(), +            'paths': self.debug_version.get_paths(),          }) -          return render_to_string('debug_toolbar/panels/versions.html', context) | 
