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:
parent
4f63ce5b4a
commit
b46a093c45
|
@ -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
|
||||
|
|
|
@ -596,6 +596,12 @@ Whether to prepend the "www." subdomain to URLs that don't have it. This is
|
|||
only used if ``CommonMiddleware`` is installed (see the `middleware docs`_).
|
||||
See also ``APPEND_SLASH``.
|
||||
|
||||
PROFANITIES_LIST
|
||||
----------------
|
||||
|
||||
A list of profanities that will trigger a validation error when the
|
||||
``hasNoProfanities`` validator is called.
|
||||
|
||||
ROOT_URLCONF
|
||||
------------
|
||||
|
||||
|
|
Loading…
Reference in New Issue