]> git.openstreetmap.org Git - osqa.git/blob - settings.py
better support for accented user names
[osqa.git] / settings.py
1 # encoding:utf-8
2 # Django settings for lanai project.
3 import os.path
4 import sys
5
6 SITE_ID = 1
7
8 ADMIN_MEDIA_PREFIX = '/admin_media/'
9 SECRET_KEY = '$oo^&_m&qwbib=(_4m_n*zn-d=g#s0he5fx9xonnym#8p6yigm'
10 # List of callables that know how to import templates from various sources.
11 TEMPLATE_LOADERS = (
12     'django.template.loaders.filesystem.load_template_source',
13     'django.template.loaders.app_directories.load_template_source',
14     'forum.modules.module_templates_loader',
15     'forum.skins.load_template_source',
16 #     'django.template.loaders.eggs.load_template_source',
17 )
18
19 MIDDLEWARE_CLASSES = [
20     #'django.middleware.gzip.GZipMiddleware',
21     'django.contrib.sessions.middleware.SessionMiddleware',
22     #'django.middleware.locale.LocaleMiddleware',
23     #'django.middleware.cache.UpdateCacheMiddleware',
24     'django.middleware.common.CommonMiddleware',
25     #'django.middleware.cache.FetchFromCacheMiddleware',
26     'forum.middleware.extended_user.ExtendedUser',
27     #'django.middleware.sqlprint.SqlPrintingMiddleware',
28     'forum.middleware.anon_user.ConnectToSessionMessagesMiddleware',
29     'forum.middleware.request_utils.RequestUtils',
30     'forum.middleware.cancel.CancelActionMiddleware',
31     #'recaptcha_django.middleware.ReCaptchaMiddleware',
32     'django.middleware.transaction.TransactionMiddleware',
33 ]
34
35 TEMPLATE_CONTEXT_PROCESSORS = (
36     'django.core.context_processors.request',
37     'forum.context.application_settings',
38     #'django.core.context_processors.i18n',
39     'forum.user_messages.context_processors.user_messages',#must be before auth
40     'django.core.context_processors.auth', #this is required for admin
41 )
42
43 ROOT_URLCONF = 'urls'
44
45 TEMPLATE_DIRS = (
46     os.path.join(os.path.dirname(__file__),'forum','skins').replace('\\','/'),
47 )
48
49 #UPLOAD SETTINGS
50 FILE_UPLOAD_TEMP_DIR = os.path.join(os.path.dirname(__file__), 'tmp').replace('\\','/')
51 FILE_UPLOAD_HANDLERS = ("django.core.files.uploadhandler.MemoryFileUploadHandler",
52  "django.core.files.uploadhandler.TemporaryFileUploadHandler",)
53 DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage'
54 # for user upload
55 ALLOW_FILE_TYPES = ('.jpg', '.jpeg', '.gif', '.bmp', '.png', '.tiff')
56 # unit byte
57 ALLOW_MAX_FILE_SIZE = 1024 * 1024
58
59
60
61 def check_local_setting(name, value):
62     local_vars = locals()
63     if name in local_vars and local_vars[name] == value:
64         return True
65     else:
66         return False
67
68 SITE_SRC_ROOT = os.path.dirname(__file__)
69 LOG_FILENAME = 'django.osqa.log'
70
71 #for logging
72 import logging
73 logging.basicConfig(
74     filename=os.path.join(SITE_SRC_ROOT, 'log', LOG_FILENAME),
75     level=logging.ERROR,
76     format='%(pathname)s TIME: %(asctime)s MSG: %(filename)s:%(funcName)s:%(lineno)d %(message)s',
77 )
78
79 #ADMINS and MANAGERS
80 ADMINS = (('Forum Admin', 'forum@example.com'),)
81 MANAGERS = ADMINS
82
83 DEBUG = True
84 DEBUG_TOOLBAR_CONFIG = {
85     'INTERCEPT_REDIRECTS': True
86 }
87 TEMPLATE_DEBUG = DEBUG
88 INTERNAL_IPS = ('127.0.0.1',)
89
90 if True:
91
92     DATABASE_NAME =  'meta_rep'          # Or path to database file if using sqlite3.
93     DATABASE_USER = 'postgres'               # Not used with sqlite3.
94     DATABASE_PASSWORD = 'postgres'               # Not used with sqlite3.
95     DATABASE_ENGINE = 'postgresql_psycopg2'  #mysql, etc
96     DATABASE_HOST = 'localhost'
97     DATABASE_PORT = ''
98 else:
99     DATABASE_NAME =  'd:/stuff/sxtest.db'#'sxtest2rep'          # Or path to database file if using sqlite3.
100     DATABASE_USER = ''               # Not used with sqlite3.
101     DATABASE_PASSWORD = ''               # Not used with sqlite3.
102     DATABASE_ENGINE = 'sqlite3'  #mysql, etc
103     DATABASE_HOST = ''
104     DATABASE_PORT = ''
105
106 #CACHE_BACKEND = 'file://%s' % os.path.join(os.path.dirname(__file__),'cache').replace('\\','/')
107 #CACHE_BACKEND = 'dummy://'
108 CACHE_BACKEND = 'memcached://127.0.0.1:11211/'
109 SESSION_ENGINE = 'django.contrib.sessions.backends.db'
110
111 APP_URL = 'http://' #used by email notif system and RSS
112
113 #LOCALIZATIONS
114 TIME_ZONE = 'America/New_York'
115
116 ###########################
117 #
118 #   this will allow running your forum with url like http://site.com/forum
119 #
120 #   FORUM_SCRIPT_ALIAS = 'forum/'
121 #
122 FORUM_SCRIPT_ALIAS = '' #no leading slash, default = '' empty string
123
124
125 #OTHER SETTINGS
126
127 USE_I18N = False
128 LANGUAGE_CODE = 'en'
129
130 EMAIL_VALIDATION = 'off' #string - on|off
131
132 DJANGO_VERSION = 1.1
133 RESOURCE_REVISION=4
134 OSQA_DEFAULT_SKIN = 'default'
135
136 DISABLED_MODULES = ['books', 'recaptcha', 'project_badges']
137
138
139 INSTALLED_APPS = [
140     'django.contrib.auth',
141     'django.contrib.contenttypes',
142     'django.contrib.sessions',
143     'django.contrib.sites',
144     'django.contrib.admin',
145     'django.contrib.humanize',
146     'django.contrib.sitemaps',
147     'django.contrib.markup',
148     'forum',
149 ]
150
151 if DEBUG:
152     try:
153         import debug_toolbar
154         MIDDLEWARE_CLASSES.append('debug_toolbar.middleware.DebugToolbarMiddleware')
155         INSTALLED_APPS.append('debug_toolbar')
156     except:
157         pass
158
159 try:
160     import south
161     INSTALLED_APPS.append('south')
162 except:
163     pass
164
165 if not DEBUG:
166     try:
167         import rosetta
168         INSTALLED_APPS.append('rosetta')
169     except:
170         pass
171
172 AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.ModelBackend',]
173
174
175