settings.py 7.63 KB
Newer Older
Okhin's avatar
Okhin committed
1
2
# Django settings for nnmon project.

Okhin's avatar
Okhin committed
3
from django.utils.translation import ugettext_lazy as _
Okhin's avatar
Okhin committed
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import os
BASE_PATH = os.path.dirname(__file__)
DEBUG = True
TEMPLATE_DEBUG = DEBUG

FORCE_SCRIPT_NAME = ''
DEV_SERVER = True
MEDIA_PATH = BASE_PATH+'/media'
ROOT_URL = ''

ADMINS = (
    ('stef', 'stef@ctrlc.hu'),
    ('nnmon', 'nnmon@laquadrature.net'),
)

MANAGERS = ADMINS

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'nnmon.db',                      # Or path to database file if using sqlite3.
        #'USER': '',                      # Not used with sqlite3.
        #'PASSWORD': '',                  # Not used with sqlite3.
        #'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
        #'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
    }
}

# Local time zone for this installation. Choices can be found here:
Okhin's avatar
Okhin committed
33
# http:/en.wikipedia.org/wiki/List_of_tz_zones_by_name
Okhin's avatar
Okhin committed
34
35
36
37
38
39
40
41
# although not all choices may be available on all operating systems.
# On Unix systems, a value of None will cause Django to use the same
# timezone as the operating system.
# If running in a Windows environment this must be set to the same as your
# system time zone.
TIME_ZONE = 'Europe/Brussels'

# Language code for this installation. All choices can be found here:
Okhin's avatar
Okhin committed
42
# http:/www.i18nguy.com/unicode/language-identifiers.html
Okhin's avatar
Okhin committed
43
44
LANGUAGE_CODE = 'en'

Okhin's avatar
Okhin committed
45
46
47
48
# Languages supported by the website
LANGUAGES = [
        ('fr', _('French')),
        ('en', _('English')),
49
        ('es', _('Spanish')),
Okhin's avatar
Okhin committed
50
        ('it', _('Italian')),
Okhin's avatar
Okhin committed
51
52
        ]

Okhin's avatar
Okhin committed
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
SITE_ID = 1

# If you set this to False, Django will make some optimizations so as not
# to load the internationalization machinery.
USE_I18N = True

# If you set this to False, Django will not format dates, numbers and
# calendars according to the current locale
USE_L10N = True

# Absolute filesystem path to the directory that will hold user-uploaded files.
# Example: "/home/media/media.lawrence.com/media/"
MEDIA_ROOT = BASE_PATH+'/media/'

# URL that handles the media served from MEDIA_ROOT. Make sure to use a
# trailing slash.
Okhin's avatar
Okhin committed
69
# Examples: "http:/media.lawrence.com/media/", "http:/example.com/media/"
Okhin's avatar
Okhin committed
70
71
72
73
74
75
76
77
78
if DEV_SERVER:
    MEDIA_URL = ROOT_URL+'/site_media/'
else:
    MEDIA_URL = ROOT_URL+'/media/'

# Absolute path to the directory static files should be collected to.
# Don't put anything in this directory yourself; store your static files
# in apps' "static/" subdirectories and in STATICFILES_DIRS.
# Example: "/home/media/media.lawrence.com/static/"
Okhin's avatar
Okhin committed
79
STATIC_ROOT = BASE_PATH+'/static_collected/'
Okhin's avatar
Okhin committed
80
81

# URL prefix for static files.
Okhin's avatar
Okhin committed
82
# Example: "http:/media.lawrence.com/static/"
Okhin's avatar
Okhin committed
83
84
85
86
STATIC_URL = '/static/'

# URL prefix for admin static files -- CSS, JavaScript and images.
# Make sure to use a trailing slash.
Okhin's avatar
Okhin committed
87
# Examples: "http:/foo.com/static/admin/", "/static/admin/".
Okhin's avatar
Okhin committed
88
89
90
91
92
93
94
ADMIN_MEDIA_PREFIX = '/static/admin/'

# Additional locations of static files
STATICFILES_DIRS = (
    # Put strings here, like "/home/html/static" or "C:/www/django/static".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
Okhin's avatar
Okhin committed
95
    BASE_PATH+'/static/',
Okhin's avatar
Okhin committed
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
)

# List of finder classes that know how to find static files in
# various locations.
STATICFILES_FINDERS = (
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
#    'django.contrib.staticfiles.finders.DefaultStorageFinder',
)

# Make this unique, and don't share it with anybody.
SECRET_KEY = '%jf=on=1+ol4b&_7aa1bq&sua=%#4luv9dx^=9#zqufbc%$e^('

# List of callables that know how to import templates from various sources.
TEMPLATE_LOADERS = (
    'django.template.loaders.filesystem.Loader',
    'django.template.loaders.app_directories.Loader',
#     'django.template.loaders.eggs.Loader',
)

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.locale.LocaleMiddleware',
    #'babeldjango.middleware.LocaleMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.middleware.csrf.CsrfViewMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.contrib.messages.middleware.MessageMiddleware',
)

ROOT_URLCONF = 'nnmon.urls'

TEMPLATE_DIRS = (
    # Put strings here, like "/home/html/django_templates" or "C:/www/django/templates".
    # Always use forward slashes, even on Windows.
    # Don't forget to use absolute paths, not relative paths.
    os.path.join(BASE_PATH, 'templates'),
)

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django_comments',
Okhin's avatar
Okhin committed
143
144
    # Reduce the spam in comments
    'spamlesscomment',
Okhin's avatar
Okhin committed
145
146
147
148
149
150
151
152
    'tinymce',
    'bt',
    'captcha',
    # Uncomment the next line to enable the admin:
    'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
    # 'django.contrib.admindocs',
    'tastypie',
Okhin's avatar
Okhin committed
153
154
    # Register users
    'registration',
Okhin's avatar
Okhin committed
155
156
    # Haystack for searching through results
    'haystack',
Okhin's avatar
Okhin committed
157
158
    # Debugging bar
    'debug_toolbar',
159
160
    # Let's have fun with bootstrap
    'bootstrap3',
Okhin's avatar
Okhin committed
161
162
)

Okhin's avatar
Okhin committed
163
COMMENTS_APP = 'spamlesscomment'
Okhin's avatar
Okhin committed
164
165
166
167
168
169
170
171
TEMPLATE_CONTEXT_PROCESSORS = ("django.contrib.auth.context_processors.auth",
                               "django.core.context_processors.debug",
                               "django.core.context_processors.i18n",
                               "django.core.context_processors.media",
                               "django.core.context_processors.static",
                               'django.core.context_processors.request',
                               "django.contrib.messages.context_processors.messages")

Okhin's avatar
Okhin committed
172
173
174
175
176
177
178
179
LOCALE_PATHS = (
        os.path.join(BASE_PATH, 'locale/'),
        )

LANGUAGES = (
        ('en', 'English'),
        ('fr', 'Francais'),
        )
Okhin's avatar
Okhin committed
180
181
182
# A sample logging configuration. The only tangible logging
# performed by this configuration is to send an email to
# the site admins on every HTTP 500 error.
Okhin's avatar
Okhin committed
183
# See http:/docs.djangoproject.com/en/dev/topics/logging for
Okhin's avatar
Okhin committed
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
# more details on how to customize your logging configuration.
LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'handlers': {
        'mail_admins': {
            'level': 'ERROR',
            'class': 'django.utils.log.AdminEmailHandler'
        },
        'logfile': {
            'class': 'logging.handlers.WatchedFileHandler',
            'filename': '/var/log/django/rmn.error.log',
        }
    },
    'loggers': {
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'ERROR',
            'propagate': True,
        },
	'django': {
	    'handlers': ['logfile'],
            'level': 'ERROR',
            'propagate': False,
	},
    }
}

if DEBUG:
    EMAIL_BACKEND = 'django.core.mail.backends.filebased.EmailBackend'
    EMAIL_FILE_PATH = '/tmp/app-messages'

TINYMCE_COMPRESSOR = True

SESSION_ENGINE = 'django.contrib.sessions.backends.file'

ACCOUNT_ACTIVATION_DAYS = 7
LOGIN_REDIRECT_URL = '/'

CAPTCHA_NOISE_FUNCTIONS = ('captcha.helpers.noise_dots',)
CAPTCHA_CHALLENGE_FUNCT = 'captcha.helpers.math_challenge'

MESSAGE_STORAGE = 'django.contrib.messages.storage.session.SessionStorage'

DEFAULT_FROM_EMAIL = 'nnmon@nnmon.lqdn.fr'

Okhin's avatar
Okhin committed
230
231
232
233
# HAYSTACK CONFIGURATION
HAYSTACK_CONNECTIONS = {
        'default': {
            'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine',
Okhin's avatar
Okhin committed
234
            'PATH': os.path.join(os.path.dirname(__file__), 'whoosh_index'),
Okhin's avatar
Okhin committed
235
236
237
        },
}

Okhin's avatar
Okhin committed
238
239
240
241
try:
    from local_settings import *
except:
    pass