mirror of
https://github.com/django/django.git
synced 2025-10-24 22:26:08 +00:00
Fixed #2678 -- Moved the list of profanities for the hasNoProfanities validator
into global_settings. Patch from Matt Croydon. git-svn-id: http://code.djangoproject.com/svn/django/trunk@3784 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
@@ -272,6 +272,10 @@ CACHE_MIDDLEWARE_KEY_PREFIX = ''
|
||||
|
||||
COMMENTS_ALLOW_PROFANITIES = False
|
||||
|
||||
# The profanities that will trigger a validation error in the
|
||||
# 'hasNoProfanities' validator. All of these should be in lower-case.
|
||||
PROFANITIES_LIST = ['asshat', 'asshead', 'asshole', 'cunt', 'fuck', 'gook', 'nigger', 'shit']
|
||||
|
||||
# The group ID that designates which users are banned.
|
||||
# Set to None if you're not using it.
|
||||
COMMENTS_BANNED_USERS_GROUP = None
|
||||
|
||||
@@ -227,9 +227,8 @@ def hasNoProfanities(field_data, all_data):
|
||||
catch 'motherfucker' as well. Raises a ValidationError such as:
|
||||
Watch your mouth! The words "f--k" and "s--t" are not allowed here.
|
||||
"""
|
||||
bad_words = ['asshat', 'asshead', 'asshole', 'cunt', 'fuck', 'gook', 'nigger', 'shit'] # all in lower case
|
||||
field_data = field_data.lower() # normalize
|
||||
words_seen = [w for w in bad_words if field_data.find(w) > -1]
|
||||
words_seen = [w for w in settings.PROFANITIES_LIST if field_data.find(w) > -1]
|
||||
if words_seen:
|
||||
from django.utils.text import get_text_list
|
||||
plural = len(words_seen) > 1
|
||||
|
||||
Reference in New Issue
Block a user