2014-08-26 13:36:38 -06:00
|
|
|
from django.contrib.auth.models import AbstractUser
|
2014-09-01 14:21:53 -06:00
|
|
|
from django.core.validators import MaxLengthValidator
|
2014-08-26 13:36:38 -06:00
|
|
|
from django.db import models
|
2014-12-03 19:22:59 -07:00
|
|
|
from django.db.models.signals import post_save
|
2019-09-23 05:08:11 -06:00
|
|
|
from rest_framework.authtoken.models import Token
|
2014-12-03 19:22:59 -07:00
|
|
|
|
|
|
|
|
|
|
|
def gen_token(sender, instance, created, **kwargs):
|
2014-12-13 10:49:15 -07:00
|
|
|
try:
|
|
|
|
Token.objects.get(user=instance)
|
2017-11-17 07:31:21 -07:00
|
|
|
except Token.DoesNotExist:
|
2014-12-13 10:49:15 -07:00
|
|
|
Token.objects.create(user=instance)
|
2014-08-26 13:36:38 -06:00
|
|
|
|
|
|
|
|
|
|
|
class User(AbstractUser):
|
2014-09-01 14:21:53 -06:00
|
|
|
"""Model for SatNOGS users."""
|
|
|
|
|
2014-09-07 08:34:38 -06:00
|
|
|
bio = models.TextField(default='', validators=[MaxLengthValidator(1000)])
|
2014-08-26 13:36:38 -06:00
|
|
|
|
2015-04-11 11:11:52 -06:00
|
|
|
@property
|
|
|
|
def displayname(self):
|
|
|
|
if self.get_full_name():
|
|
|
|
return self.get_full_name()
|
|
|
|
else:
|
|
|
|
return self.username
|
|
|
|
|
2014-08-26 13:36:38 -06:00
|
|
|
def __unicode__(self):
|
2014-08-26 14:53:50 -06:00
|
|
|
return self.username
|
2014-12-03 19:22:59 -07:00
|
|
|
|
2016-12-19 04:42:33 -07:00
|
|
|
|
2014-12-03 19:22:59 -07:00
|
|
|
post_save.connect(gen_token, sender=User)
|