Fixes for the Group application

This commit is contained in:
2010-10-26 09:03:50 +01:00
parent 4e302276eb
commit 9482f50601
3 changed files with 5 additions and 5 deletions

View File

@@ -10,7 +10,7 @@ class Migration(DataMigration):
for group in orm['auth.Group'].objects.all(): for group in orm['auth.Group'].objects.all():
try: try:
obj = orm.GroupInformation.objects.get(group=group) obj = orm.GroupInformation.objects.get(group=group)
except orm['auth.Group'].DoesNotExist: except orm.GroupInformation.DoesNotExist:
obj = orm.GroupInformation(group=group) obj = orm.GroupInformation(group=group)
obj.save() obj.save()

View File

@@ -10,11 +10,11 @@ class GroupInformation(models.Model):
group = models.OneToOneField(Group) group = models.OneToOneField(Group)
type = models.IntegerField("Group Type", choices=GROUP_TYPE_CHOICES, default=GROUP_TYPE_PERMISSION) type = models.IntegerField("Group Type", choices=GROUP_TYPE_CHOICES, default=GROUP_TYPE_PERMISSION)
admins = models.ManyToManyField(User) admins = models.ManyToManyField(User, blank=True)
public = models.BooleanField("Public", default=False, help_text="Indicates if the group is visible to all") public = models.BooleanField("Public", default=False, help_text="Indicates if the group is visible to all")
requestable = models.BooleanField("Requestable", default=False, help_text="Indicates if people can request to join this group") requestable = models.BooleanField("Requestable", default=False, help_text="Indicates if people can request to join this group")
description = models.TextField(help_text="Description of the group and its permissions") description = models.TextField(help_text="Description of the group and its permissions", blank=True)
def save(self): def save(self):
if self.group and (self.group.eveplayercorporation_set.count() or self.group.eveplayeralliance_set.count()): if self.group and (self.group.eveplayercorporation_set.count() or self.group.eveplayeralliance_set.count()):

View File

@@ -22,11 +22,11 @@ def group_list(request):
else: else:
groups = Group.objects.select_related('groupinformation').filter(Q(groupinformation__public=True) | groups = Group.objects.select_related('groupinformation').filter(Q(groupinformation__public=True) |
Q(groupinformation__admins__in=[request.user]) | Q(groupinformation__admins__in=[request.user]) |
Q(user_set__in=[request.user])) Q(user__in=[request.user]))
# Process the query into a list of tuples including status # Process the query into a list of tuples including status
group_list = [] group_list = []
for group in groups: for group in set(groups):
if request.user in group.groupinformation.admins.all(): if request.user in group.groupinformation.admins.all():
status = "Admin" status = "Admin"
elif request.user in group.user_set.all(): elif request.user in group.user_set.all():