Skip to content

Commit

Permalink
phone regex
Browse files Browse the repository at this point in the history
  • Loading branch information
aaronn committed Aug 2, 2020
1 parent b5fcc2c commit c0482c6
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 8 deletions.
2 changes: 1 addition & 1 deletion drfpasswordless/__init__.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# -*- coding: utf-8 -*-

__title__ = 'drfpasswordless'
__version__ = '1.5.4'
__version__ = '1.5.5'
__author__ = 'Aaron Ng'
__license__ = 'MIT'
__copyright__ = 'Copyright 2020 Aaron Ng'
Expand Down
2 changes: 1 addition & 1 deletion drfpasswordless/__version__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
VERSION = (1, 5, 4)
VERSION = (1, 5, 5)

__version__ = '.'.join(map(str, VERSION))
8 changes: 4 additions & 4 deletions drfpasswordless/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -85,10 +85,10 @@ class MobileAuthSerializer(AbstractBaseAliasAuthenticationSerializer):
def alias_type(self):
return 'mobile'

phone_regex = RegexValidator(regex=r'^\+?1?\d{9,15}$',
phone_regex = RegexValidator(regex=r'^\+?[1-9]\d{1,14}$',
message="Mobile number must be entered in the format:"
" '+999999999'. Up to 15 digits allowed.")
mobile = serializers.CharField(validators=[phone_regex], max_length=15)
mobile = serializers.CharField(validators=[phone_regex], max_length=17)


"""
Expand Down Expand Up @@ -169,12 +169,12 @@ class AbstractBaseCallbackTokenSerializer(serializers.Serializer):
Abstract class inspired by DRF's own token serializer.
Returns a user if valid, None or a message if not.
"""
phone_regex = RegexValidator(regex=r'^\+?1?\d{9,15}$',
phone_regex = RegexValidator(regex=r'^\+?[1-9]\d{1,14}$',
message="Mobile number must be entered in the format:"
" '+999999999'. Up to 15 digits allowed.")

email = serializers.EmailField(required=False) # Needs to be required=false to require both.
mobile = serializers.CharField(required=False, validators=[phone_regex], max_length=15)
mobile = serializers.CharField(required=False, validators=[phone_regex], max_length=17)
token = TokenField(min_length=6, max_length=6, validators=[token_age_validator])

def validate_alias(self, attrs):
Expand Down
4 changes: 2 additions & 2 deletions tests/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from django.core.validators import RegexValidator
from django.db import models

phone_regex = RegexValidator(regex=r'^\+?1?\d{9,15}$',
phone_regex = RegexValidator(regex=r'^\+?[1-9]\d{1,14}$',
message="Mobile number must be entered in the format:"
" '+999999999'. Up to 15 digits allowed.")

Expand All @@ -12,7 +12,7 @@ class CustomUser(AbstractBaseUser):
email = models.EmailField(max_length=255, unique=True, blank=True, null=True)
email_verified = models.BooleanField(default=False)

mobile = models.CharField(validators=[phone_regex], max_length=15, unique=True, blank=True, null=True)
mobile = models.CharField(validators=[phone_regex], max_length=17, unique=True, blank=True, null=True)
mobile_verified = models.BooleanField(default=False)

objects = BaseUserManager()
Expand Down

0 comments on commit c0482c6

Please sign in to comment.