Revision 420f2c20 db/models.py

b/db/models.py
6 6

  
7 7
import datetime
8 8

  
9
class SynnefoUser(User):
9
class SynnefoUser(models.Model):
10

  
11
    ACCOUNT_TYPE = (
12
        ('STUDENT', 'Student'),
13
        ('PROFESSOR', 'Professor')
14
    )
15

  
10 16
    name = models.CharField('Synnefo Username', max_length=255)
17
    realname = models.CharField('Real Name', max_length=255)
18
    uniq = models.CharField('External Unique ID', max_length=255)
11 19
    credit = models.IntegerField('Credit Balance')
12 20
    auth_token = models.CharField('Authentication Token', max_length=32)
21
    type = models.CharField('Current Image State', choices=ACCOUNT_TYPE, max_length=30)
13 22
    created = models.DateTimeField('Time of creation', auto_now_add=True)
14 23
    updated = models.DateTimeField('Time of last update', auto_now=True)
15

  
24
    
16 25
    class Meta:
17 26
        verbose_name = u'Synnefo User'
18
    
27

  
19 28
    def __unicode__(self):
20 29
        return self.name
21 30

  
31
    def __init__(self, *args, **kw):
32
        """Initialize state for just created VM instances."""
33
        super(SynnefoUser, self).__init__(*args, **kw)
34
        # This gets called BEFORE an instance gets save()d for
35
        # the first time.
36
        if not self.pk:
37
            self.name = kw['name']
38
            self.realname = kw['realname']
39

  
22 40
    def get_limit(self, limit_name):
23 41
        """Returns the limit value for the specified limit"""
24 42
        limit_objs = Limit.objects.filter(name=limit_name, user=self)

Also available in: Unified diff