Django-suit, add in Roles for specific classes site, slice, deployment, planetstack...
[plstackapi.git] / planetstack / core / models / slice.py
index 74815b2..e584c07 100644 (file)
@@ -40,15 +40,16 @@ class Slice(PlCoreBase):
             self.creator = self.caller
         super(Slice, self).save(*args, **kwds)
 
-class SliceMembership(PlCoreBase):
-    user = models.ForeignKey('User', related_name='slice_memberships')
-    slice = models.ForeignKey('Slice', related_name='slice_memberships')
-    role = models.ForeignKey('Role')
+class SliceRole(PlCoreBase):
+    ROLE_CHOICES = (('admin','Admin'),('default','Default'))
 
-    def __unicode__(self):  return u'%s %s %s' % (self.slice, self.user, self.role)
+    role = models.CharField(choices=ROLE_CHOICES, unique=True, max_length=30)
 
-    def save(self, *args, **kwds):
-        super(SliceMembership, self).save(*args, **kwds)
+    def __unicode__(self):  return u'%s' % (self.role)
 
-    def delete(self, *args, **kwds):
-        super(SliceMembership, self).delete(*args, **kwds)
+class SlicePrivilege(PlCoreBase):
+    user = models.ForeignKey('User', related_name='slice_privileges')
+    slice = models.ForeignKey('Slice', related_name='slice_privileges')
+    role = models.ForeignKey('SliceRole')
+
+    def __unicode__(self):  return u'%s %s %s' % (self.slice, self.user, self.role)