Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update validators.py #261

Merged
merged 3 commits into from
Feb 21, 2020
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 20 additions & 9 deletions baseframe/forms/validators.py
Original file line number Diff line number Diff line change
Expand Up @@ -126,9 +126,11 @@ class AllowedIf(object):
:param str message: Validation error message. Will be formatted with an optional ``{field}}`` label
"""

default_message = __(u"This requires ‘{field}’ to be specified")

def __init__(self, fieldname, message=None):
self.fieldname = fieldname
self.message = message or __(u"This requires ‘{field}’ to be specified")
self.message = message or self.default_message

def __call__(self, form, field):
if field.data:
Expand All @@ -151,10 +153,12 @@ class OptionalIf(Optional):
:param str message: Validation error message
"""

default_message = __("This is required")

def __init__(self, fieldname, message=None):
super(OptionalIf, self).__init__()
self.fieldname = fieldname
self.message = message or __("This is required")
self.message = message or self.default_message

def __call__(self, form, field):
if not is_empty(form[self.fieldname].data):
Expand All @@ -174,10 +178,12 @@ class RequiredIf(DataRequired):
:param str message: Validation error message
"""

default_message = __("This is required")

field_flags = set()

def __init__(self, fieldname, message=None):
message = message or __("This is required")
message = message or self.default_message
super(RequiredIf, self).__init__(message=message)
self.fieldname = fieldname

Expand Down Expand Up @@ -309,9 +315,10 @@ class IsEmoji(object):
:param message:
Error message to raise in case of a validation error.
"""
default_message = __(u"This is not a valid emoji.")

def __init__(self, message=None):
self.message = message or _(u"This is not a valid emoji.")
self.message = message or self.default_message

def __call__(self, form, field):
if field.data not in emoji.UNICODE_EMOJI:
Expand All @@ -328,8 +335,10 @@ class IsPublicEmailDomain(object):
Error message to raise in case of a validation error.
"""

default_message = __(u'This domain is not a public email domain.')

def __init__(self, message=None, timeout=30):
self.message = message or _(u'This domain is not a public email domain.')
self.message = message or self.default_message
self.timeout = timeout

def __call__(self, form, field):
Expand All @@ -349,8 +358,10 @@ class IsNotPublicEmailDomain(object):
Error message to raise in case of a validation error.
"""

default_message = __(u'This domain is a public email domain.')

def __init__(self, message=None, timeout=30):
self.message = message or _(u'This domain is a public email domain.')
self.message = message or self.default_message
self.timeout = timeout

def __call__(self, form, field):
Expand Down Expand Up @@ -379,7 +390,7 @@ def __call__(self, form, field):
if diagnosis.code == 0:
return
else:
raise StopValidation(self.message or _(diagnosis.message))
raise StopValidation(self.message or __(diagnosis.message))


# Legacy name
Expand All @@ -402,11 +413,11 @@ class ValidUrl(object):
)

def __init__(self, message=None, message_urltext=None, invalid_urls=[]):
self.message = message or _(
self.message = message or __(
u'The URL “{url}” is not valid or is currently inaccessible'
)
self.invalid_urls = invalid_urls
self.message_urltext = message_urltext or _(
self.message_urltext = message_urltext or __(
u'The URL “{url}” linked from “{text}” is not valid or is currently inaccessible'
)

Expand Down