Work on Snipt authorization.
parent
aefd10b092
commit
9c96783c84
|
@ -298,6 +298,11 @@ class Snipt(models.Model):
|
||||||
else:
|
else:
|
||||||
return get_lexer_by_name(self.lexer).name
|
return get_lexer_by_name(self.lexer).name
|
||||||
|
|
||||||
|
@property
|
||||||
|
def is_authorized_user(self, user):
|
||||||
|
if self.user == user:
|
||||||
|
return True
|
||||||
|
|
||||||
|
|
||||||
class SniptLogEntry(models.Model):
|
class SniptLogEntry(models.Model):
|
||||||
"""An individual log entry for a Snipt changeset."""
|
"""An individual log entry for a Snipt changeset."""
|
||||||
|
|
|
@ -196,7 +196,9 @@ def list_user(request, username_or_custom_slug, tag_slug=None):
|
||||||
snipts = Snipt.objects
|
snipts = Snipt.objects
|
||||||
|
|
||||||
if user == request.user or \
|
if user == request.user or \
|
||||||
(request.GET.get('api_key') == user.api_key.key):
|
(request.GET.get('api_key') == user.api_key.key) or \
|
||||||
|
(user.team and user.team.user_is_member(request.user)):
|
||||||
|
|
||||||
public = False
|
public = False
|
||||||
|
|
||||||
favorites = Favorite.objects.filter(user=user).values('snipt')
|
favorites = Favorite.objects.filter(user=user).values('snipt')
|
||||||
|
|
|
@ -58,3 +58,8 @@ class Team(models.Model):
|
||||||
return 'Unlimited'
|
return 'Unlimited'
|
||||||
else:
|
else:
|
||||||
return plan_map[self.plan]
|
return plan_map[self.plan]
|
||||||
|
|
||||||
|
def user_is_member(self, user):
|
||||||
|
if self.owner == user or user in self.members:
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
Loading…
Reference in New Issue