From 8fac4c558d2190cbbd196f477b49f948eb4cafda Mon Sep 17 00:00:00 2001 From: j <0x006A@0x2620.org> Date: Fri, 23 Mar 2012 16:52:20 +0100 Subject: [PATCH] only limit grup if needed, do not overwrite clips sort --- pandora/clip/models.py | 2 +- pandora/item/managers.py | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/pandora/clip/models.py b/pandora/clip/models.py index a51f148a..24801ddc 100644 --- a/pandora/clip/models.py +++ b/pandora/clip/models.py @@ -116,7 +116,7 @@ attrs = { 'aspect_ratio': models.FloatField(default=0), 'item': models.ForeignKey('item.Item', related_name='clips'), - 'sort': models.ForeignKey('item.ItemSort', related_name='clips'), + 'sort': models.ForeignKey('item.ItemSort', related_name='matching_clips'), 'user': models.IntegerField(db_index=True, null=True), #seconds diff --git a/pandora/item/managers.py b/pandora/item/managers.py index 74bb554b..48deefa1 100644 --- a/pandora/item/managers.py +++ b/pandora/item/managers.py @@ -307,6 +307,9 @@ class ItemManager(Manager): #users can see public items, there own items and items of there groups else: allowed_level = settings.CONFIG['capabilities']['canSeeItem'][user.get_profile().get_level()] - qs = qs.filter(Q(level__lte=allowed_level)|Q(user=user)|Q(groups__in=user.groups.all())) + q = Q(level__lte=allowed_level)|Q(user=user) + if user.groups.count(): + q |= Q(groups__in=user.groups.all()) + qs = qs.filter(q) #admins can see all available items return qs