forked from 0x2620/pandora
longer emails, longer passwords, longer reset codes
This commit is contained in:
parent
7738ac2779
commit
15cb3fb5bf
3 changed files with 14 additions and 8 deletions
|
@ -5,13 +5,18 @@ from django.core.validators import MaxLengthValidator
|
||||||
import app.models
|
import app.models
|
||||||
app.models.load_config()
|
app.models.load_config()
|
||||||
|
|
||||||
NEW_USERNAME_LENGTH = 255
|
NEW_LENGTH = {
|
||||||
|
'username': 255,
|
||||||
|
'email': 255,
|
||||||
|
'password': 255,
|
||||||
|
}
|
||||||
|
|
||||||
def monkey_patch_username():
|
def monkey_patch_username():
|
||||||
username = User._meta.get_field("username")
|
for field in NEW_LENGTH:
|
||||||
username.max_length = NEW_USERNAME_LENGTH
|
f= User._meta.get_field(field)
|
||||||
for v in username.validators:
|
f.max_length = NEW_LENGTH[field]
|
||||||
if isinstance(v, MaxLengthValidator):
|
for v in f.validators:
|
||||||
v.limit_value = NEW_USERNAME_LENGTH
|
if isinstance(v, MaxLengthValidator):
|
||||||
|
v.limit_value = NEW_LENGTH[field]
|
||||||
|
|
||||||
monkey_patch_username()
|
monkey_patch_username()
|
||||||
|
|
|
@ -16,7 +16,7 @@ from itemlist.models import List, Position
|
||||||
|
|
||||||
|
|
||||||
class UserProfile(models.Model):
|
class UserProfile(models.Model):
|
||||||
reset_code = models.TextField(blank=True, null=True, unique=True)
|
reset_code = models.CharField(max_length=255, blank=True, null=True, unique=True)
|
||||||
user = models.ForeignKey(User, unique=True, related_name='profile')
|
user = models.ForeignKey(User, unique=True, related_name='profile')
|
||||||
|
|
||||||
level = models.IntegerField(default=1)
|
level = models.IntegerField(default=1)
|
||||||
|
|
|
@ -268,7 +268,8 @@ def requestToken(request):
|
||||||
user = None
|
user = None
|
||||||
if user:
|
if user:
|
||||||
while True:
|
while True:
|
||||||
code = ox.to26(random.randint(32768, 1048575))
|
code = ox.to26(random.randint(ox.from26('BAAAAAAAAAAAAAAA'),
|
||||||
|
ox.from26('BAAAAAAAAAAAAAAAA')))
|
||||||
if models.UserProfile.objects.filter(reset_code=code).count() == 0:
|
if models.UserProfile.objects.filter(reset_code=code).count() == 0:
|
||||||
break
|
break
|
||||||
user_profile = user.get_profile()
|
user_profile = user.get_profile()
|
||||||
|
|
Loading…
Reference in a new issue