Seperated some config settings from code.
This commit is contained in:
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user