d3c577d8048040ecca9baa6713bfc6ca48ca34e6
[plstackapi.git] / planetstack / core / models / role.py
1 import os
2 import datetime
3 from django.db import models
4 from core.models import PlCoreBase
5 from openstack.manager import OpenStackManager
6
7 class Role(PlCoreBase):
8
9     #ROLE_CHOICES = (('admin', 'Admin'), ('pi', 'Principle Investigator'), ('user','User'))
10     role = models.CharField(null=True, blank=True,max_length=256, unique=True)
11     role_type = models.CharField(max_length=80, unique=True)
12
13     def __unicode__(self):  return u'%s' % (self.role_type)
14
15
16     def save(self, *args, **kwds):
17         if not hasattr(self, 'os_manager'):
18             setattr(self, 'os_manager', OpenStackManager())
19             self.os_manager.save_role(self)
20         super(Role, self).save(*args, **kwds)
21     
22     def delete(self, *args, **kwds):
23         if not hasattr(self, 'os_manager'):
24             setattr(self, 'os_manager', OpenStackManager())
25             self.os_manager.delete_role(self)   
26         super(Role, self).delete(*args, **kwds)
27