Seperated some config settings from code.

This commit is contained in:
2018-01-26 14:28:09 +01:00
parent c250854cbe
commit 5cf05666ab
9 changed files with 231 additions and 137 deletions

View File

@@ -1,5 +1,6 @@
import logging
import os
from django.apps import apps
from django.contrib import messages
from django.contrib.auth import login
from django.contrib.auth.decorators import login_required
@@ -11,10 +12,10 @@ from django.utils.decorators import method_decorator
from django.utils.translation import ugettext as _
from django.views import generic
from .. import config
from .. import forms
from .. import models
app_config = apps.get_containing_app_config(__package__)
logger = logging.getLogger(__name__)
@@ -25,13 +26,13 @@ class EventListView(generic.ListView):
user = self.request.user
if user.is_superuser:
qs = self.model.objects.all()
elif user.groups.filter(name=config.MANAGE_ALL_GROUP).count():
elif user.groups.filter(name=app_config.settings.manage_all_group).count():
qs = self.model.objects.all()
else:
user_sports_list = list()
for k in ('W', 'S', 'M', 'K', 'B'):
group_name_var = 'MANAGE_{}_GROUP'.format(k)
group_name = getattr(config, group_name_var, None)
group_name_var = 'manage_{}_group'.format(k.lower())
group_name = getattr(app_config.settings, group_name_var, None)
if group_name and user.groups.filter(name=group_name).count():
user_sports_list.append(k)
qs = self.model.objects.filter(Q(owner=user) | Q(sport__in=user_sports_list))
@@ -55,17 +56,17 @@ class EventPermissionMixin(object):
if permission == 'view':
if obj.owner == user:
return True
if user.groups.filter(name=config.MANAGE_ALL_GROUP).count():
if user.groups.filter(name=app_config.settings.manage_all_group).count():
return True
group_name_var = 'MANAGE_{}_GROUP'.format(obj.sport)
group_name = getattr(config, group_name_var, None)
group_name_var = 'manage_{}_group'.format(obj.sport.lower())
group_name = getattr(app_config.settings, group_name_var, None)
if group_name and user.groups.filter(name=group_name).count():
return True
elif permission in ('update', 'accept'):
if user.groups.filter(name=config.MANAGE_ALL_GROUP).count():
if user.groups.filter(name=app_config.settings.manage_all_group).count():
return True
group_name_var = 'MANAGE_{}_GROUP'.format(obj.sport)
group_name = getattr(config, group_name_var, None)
group_name_var = 'manage_{}_group'.format(obj.sport)
group_name = getattr(app_config.settings, group_name_var, None)
if group_name and user.groups.filter(name=group_name).count():
return True