fix bugs. refactor
diff --git a/planetstack/core/models/slice.py b/planetstack/core/models/slice.py
index 823b1d1..c39d09b 100644
--- a/planetstack/core/models/slice.py
+++ b/planetstack/core/models/slice.py
@@ -49,7 +49,7 @@
return True
slice_privs = SlicePrivilege.objects.filter(user=user, slice=self)
for slice_priv in slice_privs:
- if slice_priv.role.role_type == 'admin':
+ if slice_priv.role.role == 'admin':
return True
return False
@@ -77,13 +77,7 @@
def __unicode__(self): return u'%s %s %s' % (self.slice, self.user, self.role)
def can_update(self, user):
- if user.is_admin:
- return True
- slice_privs = SlicePrivilege.objects.filter(user=user, slice=self)
- for slice_priv in slice_privs:
- if slice_priv.role.role_type == 'admin':
- return True
- return False
+ return self.slice.can_update(user)
@staticmethod
def select_by_user(user):