diff --git a/openslides/config/models.py b/openslides/config/models.py index 558a442fc..39cf378bd 100644 --- a/openslides/config/models.py +++ b/openslides/config/models.py @@ -101,10 +101,10 @@ from openslides.utils.signals import template_manipulation def set_submenu(sender, request, context, **kwargs): if not request.path.startswith('/config/'): return None - selected = True if request.path == reverse('config_general') else False menu_links = [ - (reverse('config_general'), _('General'), selected), + (reverse('config_general'), _('General'), request.path == reverse('config_general') ), ] + for app in settings.INSTALLED_APPS: try: mod = import_module(app + '.views') @@ -118,9 +118,10 @@ def set_submenu(sender, request, context, **kwargs): (reverse('config_%s' % appname), _(appname.title()), selected) ) + menu_links.append ( + (reverse('config_version'), _('Version'), request.path == reverse('config_version') ) + ) + context.update({ 'menu_links': menu_links, }) - - - diff --git a/openslides/config/templates/config/version.html b/openslides/config/templates/config/version.html new file mode 100644 index 000000000..f325f5f7f --- /dev/null +++ b/openslides/config/templates/config/version.html @@ -0,0 +1,11 @@ +{% extends "config/base_config.html" %} + +{% load i18n %} + +{% block title %}{{ block.super }} - {% trans "Version" %}{% endblock %} + +{% block content %} +

{% trans "Version" %}

+ +

{% trans "OpenSlides Version" %}: {{ version }}

+{% endblock %} diff --git a/openslides/config/urls.py b/openslides/config/urls.py index ba16952d8..4168f9254 100644 --- a/openslides/config/urls.py +++ b/openslides/config/urls.py @@ -15,13 +15,18 @@ from django.utils.importlib import import_module import settings -from views import GeneralConfig +from views import GeneralConfig, VersionConfig urlpatterns = patterns('config.views', url(r'^general/$', GeneralConfig.as_view(), name='config_general', ), + + url(r'^version/$', + VersionConfig.as_view(), + name='config_version', + ), ) for app in settings.INSTALLED_APPS: diff --git a/openslides/config/views.py b/openslides/config/views.py index f7ff7f1ee..cbbecbcdc 100644 --- a/openslides/config/views.py +++ b/openslides/config/views.py @@ -17,8 +17,10 @@ from django.contrib.auth.models import Group, Permission from django.utils.translation import ugettext as _ from django.template.loader import render_to_string +from openslides import get_version + from utils.utils import template, permission_required -from utils.views import FormView +from utils.views import FormView, TemplateView from utils.template import Tab from forms import SystemConfigForm, EventConfigForm @@ -54,6 +56,16 @@ class GeneralConfig(FormView): return super(Config, self).form_invalid(form) +class VersionConfig(TemplateView): + permission_required = 'config.can_manage_config' + template_name = 'config/version.html' + + def get_context_data(self, **kwargs): + context = super(VersionConfig, self).get_context_data(**kwargs) + context['version'] = get_version() + return context + + class Config(FormView): permission_required = 'config.can_manage_config' form_class = SystemConfigForm diff --git a/openslides/templates/base.html b/openslides/templates/base.html index 7cdca2395..b25b784ea 100644 --- a/openslides/templates/base.html +++ b/openslides/templates/base.html @@ -68,8 +68,7 @@ {% endblock %}