change superuser to user with all perms
This commit is contained in:
@@ -1,5 +1,11 @@
|
|||||||
from django.apps import AppConfig
|
from django.apps import AppConfig
|
||||||
|
from django.db.models.signals import post_migrate
|
||||||
|
|
||||||
|
from fet2020.utils import create_perms
|
||||||
|
|
||||||
|
|
||||||
class BlackboardConfig(AppConfig):
|
class BlackboardConfig(AppConfig):
|
||||||
name = "blackboard"
|
name = "blackboard"
|
||||||
|
|
||||||
|
def ready(self):
|
||||||
|
post_migrate.connect(create_perms, sender=self)
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ from django.apps import AppConfig
|
|||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.db.models.signals import post_migrate
|
from django.db.models.signals import post_migrate
|
||||||
|
|
||||||
|
from fet2020.utils import create_perms
|
||||||
|
|
||||||
|
|
||||||
def update_default_site(sender, **kwargs):
|
def update_default_site(sender, **kwargs):
|
||||||
from django.contrib.sites.models import Site
|
from django.contrib.sites.models import Site
|
||||||
@@ -17,3 +19,4 @@ class CoreConfig(AppConfig):
|
|||||||
|
|
||||||
def ready(self):
|
def ready(self):
|
||||||
post_migrate.connect(update_default_site, sender=self)
|
post_migrate.connect(update_default_site, sender=self)
|
||||||
|
post_migrate.connect(create_perms, sender=self)
|
||||||
|
|||||||
@@ -12,6 +12,10 @@ class FETHeaderMiddleware(RemoteUserMiddleware):
|
|||||||
super().process_request(request)
|
super().process_request(request)
|
||||||
|
|
||||||
if request.user.is_authenticated:
|
if request.user.is_authenticated:
|
||||||
request.user.is_admin = True
|
from django.contrib.auth.models import Group
|
||||||
request.user.is_superuser = True
|
|
||||||
|
groups = Group.objects.all()
|
||||||
|
[request.user.groups.add(group.pk) for group in groups]
|
||||||
|
|
||||||
|
# request.user.is_superuser = True
|
||||||
request.user.is_staff = True
|
request.user.is_staff = True
|
||||||
|
|||||||
@@ -1,12 +1,13 @@
|
|||||||
# util functions for all apps
|
# util functions for all apps
|
||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
from django.contrib.admin.models import ADDITION, CHANGE, LogEntry
|
|
||||||
from django.contrib.admin.utils import construct_change_message
|
from django.contrib.admin.utils import construct_change_message
|
||||||
from django.contrib.contenttypes.models import ContentType
|
|
||||||
|
|
||||||
|
|
||||||
def add_log_action(request, form, app_label, model, add=True):
|
def add_log_action(request, form, app_label, model, add=True):
|
||||||
|
from django.contrib.admin.models import ADDITION, CHANGE, LogEntry
|
||||||
|
from django.contrib.contenttypes.models import ContentType
|
||||||
|
|
||||||
obj = form.save()
|
obj = form.save()
|
||||||
content_type = ContentType.objects.get(app_label=app_label, model=model)
|
content_type = ContentType.objects.get(app_label=app_label, model=model)
|
||||||
change_message = construct_change_message(form, None, add)
|
change_message = construct_change_message(form, None, add)
|
||||||
@@ -26,5 +27,17 @@ def add_log_action(request, form, app_label, model, add=True):
|
|||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
def create_perms(sender, **kwargs):
|
||||||
|
from django.contrib.auth.models import Group, Permission
|
||||||
|
from django.contrib.contenttypes.models import ContentType
|
||||||
|
|
||||||
|
group, created = Group.objects.get_or_create(name=sender.label)
|
||||||
|
|
||||||
|
content_types = ContentType.objects.filter(app_label=sender.label)
|
||||||
|
for content_type in content_types:
|
||||||
|
permissions = Permission.objects.filter(content_type=content_type)
|
||||||
|
[group.permissions.add(permission) for permission in permissions]
|
||||||
|
|
||||||
|
|
||||||
def create_random_id():
|
def create_random_id():
|
||||||
return str(uuid.uuid4())[:8]
|
return str(uuid.uuid4())[:8]
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
from django.apps import AppConfig
|
from django.apps import AppConfig
|
||||||
|
from django.db.models.signals import post_migrate
|
||||||
|
|
||||||
|
from fet2020.utils import create_perms
|
||||||
|
|
||||||
|
|
||||||
class GalleryConfig(AppConfig):
|
class GalleryConfig(AppConfig):
|
||||||
name = "gallery"
|
name = "gallery"
|
||||||
|
|
||||||
|
def ready(self):
|
||||||
|
post_migrate.connect(create_perms, sender=self)
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
from django.apps import AppConfig
|
from django.apps import AppConfig
|
||||||
|
from django.db.models.signals import post_migrate
|
||||||
|
|
||||||
|
from fet2020.utils import create_perms
|
||||||
|
|
||||||
|
|
||||||
class InternConfig(AppConfig):
|
class InternConfig(AppConfig):
|
||||||
name = "intern"
|
name = "intern"
|
||||||
|
|
||||||
|
def ready(self):
|
||||||
|
post_migrate.connect(create_perms, sender=self)
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
from django.apps import AppConfig
|
from django.apps import AppConfig, apps
|
||||||
|
from django.db.models.signals import post_migrate
|
||||||
|
|
||||||
|
from fet2020.utils import create_perms
|
||||||
|
|
||||||
|
|
||||||
class MembersConfig(AppConfig):
|
class MembersConfig(AppConfig):
|
||||||
name = "members"
|
name = "members"
|
||||||
|
|
||||||
|
def ready(self):
|
||||||
|
post_migrate.connect(create_perms, sender=self)
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
from django.apps import AppConfig
|
from django.apps import AppConfig
|
||||||
|
from django.db.models.signals import post_migrate
|
||||||
|
|
||||||
|
from fet2020.utils import create_perms
|
||||||
|
|
||||||
|
|
||||||
class PostsConfig(AppConfig):
|
class PostsConfig(AppConfig):
|
||||||
name = "posts"
|
name = "posts"
|
||||||
|
|
||||||
|
def ready(self):
|
||||||
|
post_migrate.connect(create_perms, sender=self)
|
||||||
|
|||||||
@@ -1,5 +1,11 @@
|
|||||||
from django.apps import AppConfig
|
from django.apps import AppConfig
|
||||||
|
from django.db.models.signals import post_migrate
|
||||||
|
|
||||||
|
from fet2020.utils import create_perms
|
||||||
|
|
||||||
|
|
||||||
class TasksConfig(AppConfig):
|
class TasksConfig(AppConfig):
|
||||||
name = "tasks"
|
name = "tasks"
|
||||||
|
|
||||||
|
def ready(self):
|
||||||
|
post_migrate.connect(create_perms, sender=self)
|
||||||
|
|||||||
Reference in New Issue
Block a user