mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-09 20:40:17 +02:00
- prevents exploit of another user entering incorrect password for email yet passing validation using existing token mentioned in #146 - does not protect against same user entering wrong password (I can live with this.) Periodic task to remove invalid token every 2 hours
41 lines
1.1 KiB
Python
41 lines
1.1 KiB
Python
from django.db import models
|
|
from django.contrib.auth.models import Group, User
|
|
|
|
class TSgroup(models.Model):
|
|
ts_group_id = models.IntegerField(primary_key=True)
|
|
ts_group_name = models.CharField(max_length=30)
|
|
|
|
class Meta:
|
|
verbose_name='TS Group'
|
|
|
|
def __str__(self):
|
|
return self.ts_group_name
|
|
|
|
class AuthTS(models.Model):
|
|
auth_group = models.ForeignKey('auth.Group')
|
|
ts_group = models.ManyToManyField(TSgroup)
|
|
|
|
class Meta:
|
|
verbose_name='Auth / TS Group'
|
|
|
|
def __str__(self):
|
|
return self.auth_group.name
|
|
|
|
class UserTSgroup(models.Model):
|
|
user = models.ForeignKey('auth.User')
|
|
ts_group = models.ManyToManyField(TSgroup)
|
|
|
|
class Meta:
|
|
verbose_name='User TS Group'
|
|
|
|
def __str__(self):
|
|
return self.user.name
|
|
|
|
class DiscordAuthToken(models.Model):
|
|
email = models.CharField(max_length=254, unique=True)
|
|
token = models.CharField(max_length=254)
|
|
user = models.ForeignKey(User, on_delete=models.CASCADE, null=True)
|
|
def __str__(self):
|
|
output = "Discord Token for email %s user %s" % (self.email, self.user)
|
|
return output.encode('utf-8')
|