mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-09 20:40:17 +02:00
Fix group creation ignoring AuthGroup settings. (Fixes #1161)
This commit is contained in:
parent
6f2807cba2
commit
0f0f9b6062
@ -40,9 +40,6 @@ class AuthGroupInlineAdmin(admin.StackedInline):
|
|||||||
kwargs["queryset"] = Group.objects.order_by(Lower('name'))
|
kwargs["queryset"] = Group.objects.order_by(Lower('name'))
|
||||||
return super().formfield_for_manytomany(db_field, request, **kwargs)
|
return super().formfield_for_manytomany(db_field, request, **kwargs)
|
||||||
|
|
||||||
def has_add_permission(self, request, obj=None):
|
|
||||||
return False
|
|
||||||
|
|
||||||
def has_delete_permission(self, request, obj=None):
|
def has_delete_permission(self, request, obj=None):
|
||||||
return False
|
return False
|
||||||
|
|
||||||
@ -173,6 +170,13 @@ class GroupAdmin(admin.ModelAdmin):
|
|||||||
kwargs["queryset"] = Permission.objects.select_related("content_type").all()
|
kwargs["queryset"] = Permission.objects.select_related("content_type").all()
|
||||||
return super().formfield_for_manytomany(db_field, request, **kwargs)
|
return super().formfield_for_manytomany(db_field, request, **kwargs)
|
||||||
|
|
||||||
|
def save_formset(self, request, form, formset, change):
|
||||||
|
for inline_form in formset:
|
||||||
|
ag_instance = inline_form.save(commit=False)
|
||||||
|
ag_instance.group = form.instance
|
||||||
|
ag_instance.save()
|
||||||
|
formset.save()
|
||||||
|
|
||||||
|
|
||||||
class Group(BaseGroup):
|
class Group(BaseGroup):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
@ -55,7 +55,6 @@ class RequestLog(models.Model):
|
|||||||
return user.profile.main_character
|
return user.profile.main_character
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class AuthGroup(models.Model):
|
class AuthGroup(models.Model):
|
||||||
"""
|
"""
|
||||||
Extends Django Group model with a one-to-one field
|
Extends Django Group model with a one-to-one field
|
||||||
@ -107,7 +106,8 @@ class AuthGroup(models.Model):
|
|||||||
help_text="States listed here will have the ability to join this group provided "
|
help_text="States listed here will have the ability to join this group provided "
|
||||||
"they have the proper permissions.")
|
"they have the proper permissions.")
|
||||||
|
|
||||||
description = models.TextField(max_length=512, blank=True, help_text="Short description <i>(max. 512 characters)</i> of the group shown to users.")
|
description = models.TextField(max_length=512, blank=True, help_text="Short description <i>(max. 512 characters)"
|
||||||
|
"</i> of the group shown to users.")
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.group.name
|
return self.group.name
|
||||||
@ -117,20 +117,3 @@ class AuthGroup(models.Model):
|
|||||||
("request_groups", u"Can request non-public groups"),
|
("request_groups", u"Can request non-public groups"),
|
||||||
)
|
)
|
||||||
default_permissions = tuple()
|
default_permissions = tuple()
|
||||||
|
|
||||||
|
|
||||||
@receiver(post_save, sender=Group)
|
|
||||||
def create_auth_group(sender, instance, created, **kwargs):
|
|
||||||
"""
|
|
||||||
Creates the AuthGroup model when a group is created
|
|
||||||
"""
|
|
||||||
if created:
|
|
||||||
AuthGroup.objects.create(group=instance)
|
|
||||||
|
|
||||||
|
|
||||||
@receiver(post_save, sender=Group)
|
|
||||||
def save_auth_group(sender, instance, **kwargs):
|
|
||||||
"""
|
|
||||||
Ensures AuthGroup model is saved automatically
|
|
||||||
"""
|
|
||||||
instance.authgroup.save()
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user