Set password validators
[wolnelektury.git] / src / wolnelektury / settings / basic.py
1 # This file is part of Wolne Lektury, licensed under GNU Affero GPLv3 or later.
2 # Copyright © Fundacja Wolne Lektury. See NOTICE for more information.
3 #
4 import os
5
6 DEBUG = True
7
8 ADMINS = [
9     # ('Your Name', 'your_email@domain.com'),
10 ]
11
12 MANAGERS = ADMINS
13
14 CONTACT_EMAIL = 'fundacja@wolnelektury.pl'
15
16 ALLOWED_HOSTS = os.environ.get('ALLOWED_HOSTS', '').split()
17
18 AUTH_PASSWORD_VALIDATORS = [
19     {
20         "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
21     },
22     {
23         "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
24         "OPTIONS": {
25             "min_length": 6,
26         },
27     },
28     {
29         "NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
30     },
31     {
32         "NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
33     },
34 ]
35
36 CACHE_MIDDLEWARE_SECONDS = 3 * 60
37
38 CACHES = {
39     'default': {
40         'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
41         'TIMEOUT': 180,
42         'LOCATION': [
43             'memcached:11211',
44         ],
45     },
46     'template_fragments': {
47         'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
48         'TIMEOUT': 86400,
49         'LOCATION': [
50             'memcached:11211',
51         ],
52     },
53 }
54
55 DATABASES = {
56     'default': {
57         'ENGINE': 'django.db.backends.postgresql',
58         'HOST': 'db',
59         'USER': os.environ.get('POSTGRES_USER'),
60         'PASSWORD': os.environ.get('POSTGRES_PASSWORD'),
61         'NAME': os.environ.get('POSTGRES_USER'),
62     }
63 }
64
65 DEFAULT_AUTO_FIELD = 'django.db.models.AutoField'
66
67 # Local time zone for this installation. Choices can be found here:
68 # http://en.wikipedia.org/wiki/List_of_tz_zones_by_name
69 # although not all choices may be available on all operating systems.
70 # If running in a Windows environment this must be set to the same as your
71 # system time zone.
72 TIME_ZONE = 'Europe/Warsaw'
73 USE_TZ = True
74
75 SITE_ID = 1
76
77 TEMPLATES = [{
78     'BACKEND': 'django.template.backends.django.DjangoTemplates',
79     'APP_DIRS': True,
80     'OPTIONS': {
81         'context_processors': (
82             'django.contrib.auth.context_processors.auth',
83             'django.contrib.messages.context_processors.messages',
84             'django.template.context_processors.debug',
85             'django.template.context_processors.i18n',
86             'django.template.context_processors.media',
87             'django.template.context_processors.request',
88             'wolnelektury.context_processors.extra_settings',
89         ),
90     },
91 }]
92
93 MIDDLEWARE = [
94     'debug_toolbar.middleware.DebugToolbarMiddleware',
95     'django.middleware.csrf.CsrfViewMiddleware',
96     'django.middleware.cache.UpdateCacheMiddleware',
97     'django.middleware.common.CommonMiddleware',
98     'django.contrib.sessions.middleware.SessionMiddleware',
99     'django.contrib.auth.middleware.AuthenticationMiddleware',
100     'django.contrib.admindocs.middleware.XViewMiddleware',
101     'fnp_django_pagination.middleware.PaginationMiddleware',
102     'django.middleware.locale.LocaleMiddleware',
103     'django.middleware.common.CommonMiddleware',
104     'django.contrib.messages.middleware.MessageMiddleware',
105     'fnpdjango.middleware.SetRemoteAddrFromXRealIP',
106     'django.middleware.cache.FetchFromCacheMiddleware',
107     'experiments.middleware.experiments_middleware',
108 ]
109
110 ROOT_URLCONF = 'wolnelektury.urls'
111
112 FILE_UPLOAD_PERMISSIONS = 0o640