diff --git a/allianceauth/groupmanagement/admin.py b/allianceauth/groupmanagement/admin.py index 37fa1e37..496c752d 100644 --- a/allianceauth/groupmanagement/admin.py +++ b/allianceauth/groupmanagement/admin.py @@ -138,7 +138,7 @@ class GroupAdmin(admin.ModelAdmin): _member_count.admin_order_field = 'member_count' def has_leader(self, obj): - return obj.authgroup.group_leaders.exists() + return obj.authgroup.group_leaders.exists() or obj.authgroup.group_leader_groups.exists() has_leader.boolean = True diff --git a/allianceauth/groupmanagement/tests/test_admin.py b/allianceauth/groupmanagement/tests/test_admin.py index b3916d7e..82d3df99 100644 --- a/allianceauth/groupmanagement/tests/test_admin.py +++ b/allianceauth/groupmanagement/tests/test_admin.py @@ -47,7 +47,8 @@ class TestGroupAdmin(TestCase): # group 2 - no leader cls.group_2 = Group.objects.create(name='Group 2') cls.group_2.authgroup.description = 'Internal Group' - cls.group_2.authgroup.internal = True + cls.group_2.authgroup.internal = True + cls.group_2.authgroup.group_leader_groups.add(cls.group_1) cls.group_2.authgroup.save() # group 3 - has leader @@ -237,10 +238,14 @@ class TestGroupAdmin(TestCase): result = self.modeladmin._member_count(obj) self.assertEqual(result, expected) - def test_has_leader(self): + def test_has_leader_user(self): result = self.modeladmin.has_leader(self.group_1) self.assertTrue(result) + def test_has_leader_group(self): + result = self.modeladmin.has_leader(self.group_2) + self.assertTrue(result) + def test_properties_1(self): expected = ['Default'] result = self.modeladmin._properties(self.group_1)