2
from django.core.urlresolvers import reverse
6
return reverse('cab_author_snippets', kwargs={'username': user.username})
9
PROJECT_ROOT = os.path.join(os.path.dirname(os.path.abspath(__file__)),
13
('Jannis Leidel', 'jannis@leidel.info'),
19
SITE_NAME = 'djangosnippets.org'
21
DEBUG = TEMPLATE_DEBUG = False
23
TIME_ZONE = 'America/Chicago'
24
LANGUAGE_CODE = 'en-us'
28
DEFAULT_FROM_EMAIL = 'no-reply@djangosnippets.org'
29
SERVER_EMAIL = 'no-reply@djangosnippets.org'
30
EMAIL_SUBJECT_PREFIX = '[djangosnippets] '
33
ABSOLUTE_URL_OVERRIDES = {
34
'auth.user': user_url,
39
ROOT_URLCONF = 'djangosnippets.urls'
41
CACHE_KEY_PREFIX = 'djangosnippets'
42
CACHE_MIDDLEWARE_KEY_PREFIX = CACHE_KEY_PREFIX
43
CACHE_MIDDLEWARE_SECONDS = 60
46
'django.contrib.auth',
47
'django.contrib.admin',
48
'django.contrib.comments',
49
'django.contrib.contenttypes',
50
'django.contrib.flatpages',
51
'django.contrib.markup',
52
'django.contrib.messages',
53
'django.contrib.sessions',
54
'django.contrib.staticfiles',
55
'django.contrib.sites',
59
'allauth.socialaccount',
60
'allauth.socialaccount.providers.bitbucket',
61
'allauth.socialaccount.providers.github',
62
'allauth.socialaccount.providers.twitter',
66
'comments_spamfighter',
76
MIDDLEWARE_CLASSES = (
77
# 'django.middleware.cache.UpdateCacheMiddleware',
78
'django.middleware.common.CommonMiddleware',
79
# 'django.middleware.cache.FetchFromCacheMiddleware',
80
'django.contrib.sessions.middleware.SessionMiddleware',
81
'django.contrib.auth.middleware.AuthenticationMiddleware',
82
'django.middleware.csrf.CsrfViewMiddleware',
83
'django.contrib.messages.middleware.MessageMiddleware',
84
'django.contrib.flatpages.middleware.FlatpageFallbackMiddleware',
85
'pagination.middleware.PaginationMiddleware',
86
'ratelimitbackend.middleware.RateLimitMiddleware',
89
TEMPLATE_CONTEXT_PROCESSORS = (
90
'django.contrib.auth.context_processors.auth',
91
'django.core.context_processors.debug',
92
'django.core.context_processors.media',
93
'django.core.context_processors.static',
94
'django.contrib.messages.context_processors.messages',
95
'django.core.context_processors.request',
96
# allauth specific context processors
97
'allauth.account.context_processors.account',
98
'allauth.socialaccount.context_processors.socialaccount',
102
'django.template.loaders.filesystem.Loader',
103
'django.template.loaders.app_directories.Loader',
107
os.path.join(PROJECT_ROOT, 'templates'),
110
STATIC_URL = '/assets/static/'
111
STATIC_ROOT = os.path.join(PROJECT_ROOT, '..', 'assets', 'static')
113
os.path.join(PROJECT_ROOT, 'static'),
116
SESSION_ENGINE = 'django.contrib.sessions.backends.cached_db'
117
MESSAGE_STORAGE = 'django.contrib.messages.storage.session.SessionStorage'
119
ACCOUNT_EMAIL_CONFIRMATION_EXPIRE_DAYS = 7
120
ACCOUNT_EMAIL_REQUIRED = True
121
ACCOUNT_EMAIL_VERIFICATION = 'mandatory'
122
ACCOUNT_DEFAULT_HTTP_PROTOCOL = 'https'
123
ACCOUNT_LOGOUT_ON_GET = True
124
ACCOUNT_USERNAME_MIN_LENGTH = 3
125
ACCOUNT_ADAPTER = 'djangosnippets.adapters.DjangoSnippetsAccountAdapter'
126
SOCIALACCOUNT_ADAPTER = 'djangosnippets.adapters.DjangoSnippetsSocialAccountAdapter'
127
SOCIALACCOUNT_AUTO_SIGNUP = False
129
LOGIN_REDIRECT_URL = '/'
130
ACCOUNT_LOGOUT_REDIRECT_URL = '/'
132
COMMENTS_APP = 'cab.comments'
134
HAYSTACK_SIGNAL_PROCESSOR = 'haystack.signals.RealtimeSignalProcessor'
147
(0, 'Not specified'),
150
# keys for localhost and 127.0.0.1
151
RECAPTCHA_PUBLIC_KEY = '6LcXj_oSAAAAAPQ3u23Y6MqQqd2yMYtnHqa7Zj61'
152
RECAPTCHA_PRIVATE_KEY = '6LcXj_oSAAAAAFN31LR-F31lwFSQAcJgsg1pE5WP'
153
RECAPTCHA_USE_SSL = True
155
AUTHENTICATION_BACKENDS = (
156
'ratelimitbackend.backends.RateLimitModelBackend',
157
'allauth.account.auth_backends.AuthenticationBackend',
160
DISQUS_WEBSITE_SHORTNAME = 'djangosnippets'
161
DISQUS_USE_SINGLE_SIGNON = True
163
from django.contrib import messages
166
messages.DEBUG: 'secondary',
167
messages.INFO: 'info',
168
messages.SUCCESS: 'success',
169
messages.WARNING: 'warning',
170
messages.ERROR: 'alert',