forked from 0x2620/pandora
only return visible clips. fixes #625
This commit is contained in:
parent
05a30e162c
commit
69cbee4bd5
1 changed files with 9 additions and 0 deletions
|
@ -201,4 +201,13 @@ class ClipManager(Manager):
|
|||
if 'keys' in data:
|
||||
for l in filter(lambda k: k in settings.CONFIG['clipLayers'], data['keys']):
|
||||
qs = qs.filter(**{l: True})
|
||||
#anonymous can only see public clips
|
||||
if not user or user.is_anonymous():
|
||||
allowed_level = settings.CONFIG['capabilities']['canSeeItem']['guest']
|
||||
qs = qs.filter(item__level__lte=allowed_level)
|
||||
#users can see public clips, there own clips and clips of there groups
|
||||
else:
|
||||
allowed_level = settings.CONFIG['capabilities']['canSeeItem'][user.get_profile().get_level()]
|
||||
qs = qs.filter(Q(item__level__lte=allowed_level)|Q(item__user=user)|Q(item__groups__in=user.groups.all()))
|
||||
#admins can see all available clips
|
||||
return qs
|
||||
|
|
Loading…
Reference in a new issue