X-Git-Url: https://git.openstreetmap.org/osqa.git/blobdiff_plain/7f4982393567a5f6827c12a089363d91338f9f13..3223ab3b10da1eac0f6f608a2619ffe53d5a0889:/settings.py diff --git a/settings.py b/settings.py index 61c47a8..0c0495a 100644 --- a/settings.py +++ b/settings.py @@ -4,33 +4,32 @@ import sys SITE_ID = 1 -ADMIN_MEDIA_PREFIX = '/admin_media/' -SECRET_KEY = '$oo^&_m&qwbib=(_4m_n*zn-d=g#s0he5fx9xonnym#8p6yigm' +SECRET_KEY = 'a;::qCl1mfh?avagttOJ;8f5Rr54d,9qy7;o15M2cYO75?OQo51u3LnQ;!8N.:,7' -TEMPLATE_LOADERS = [ - 'django.template.loaders.filesystem.load_template_source', - 'django.template.loaders.app_directories.load_template_source', - 'forum.modules.template_loader.module_templates_loader', - 'forum.skins.load_template_source', -] +CACHE_MAX_KEY_LENGTH = 235 MIDDLEWARE_CLASSES = [ + 'django.middleware.csrf.CsrfViewMiddleware', + 'forum.middleware.django_cookies.CookiePreHandlerMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.common.CommonMiddleware', 'forum.middleware.extended_user.ExtendedUser', 'forum.middleware.anon_user.ConnectToSessionMessagesMiddleware', 'forum.middleware.request_utils.RequestUtils', 'forum.middleware.cancel.CancelActionMiddleware', 'forum.middleware.admin_messages.AdminMessagesMiddleware', - #'recaptcha_django.middleware.ReCaptchaMiddleware', + 'forum.middleware.custom_pages.CustomPagesFallbackMiddleware', 'django.middleware.transaction.TransactionMiddleware', + 'forum.middleware.django_cookies.CookiePostHandlerMiddleware', ] TEMPLATE_CONTEXT_PROCESSORS = [ 'django.core.context_processors.request', 'forum.context.application_settings', + 'django.contrib.messages.context_processors.messages', 'forum.user_messages.context_processors.user_messages', - 'django.core.context_processors.auth', + 'django.contrib.auth.context_processors.auth', ] ROOT_URLCONF = 'urls' @@ -49,9 +48,21 @@ DEFAULT_FILE_STORAGE = 'django.core.files.storage.FileSystemStorage' ALLOW_FILE_TYPES = ('.jpg', '.jpeg', '.gif', '.bmp', '.png', '.tiff') ALLOW_MAX_FILE_SIZE = 1024 * 1024 +SESSION_SERIALIZER = 'django.contrib.sessions.serializers.PickleSerializer' + +MESSAGE_STORAGE = 'django.contrib.messages.storage.session.SessionStorage' + # User settings from settings_local import * +template_loaders = ( + 'django.template.loaders.filesystem.Loader', + 'django.template.loaders.app_directories.Loader', + 'forum.modules.template_loader.module_templates_loader', + 'forum.skins.load_template_source', +) +TEMPLATE_LOADERS = list(template_loaders) if DEBUG else [ ('django.template.loaders.cached.Loader', template_loaders) ] + try: if len(FORUM_SCRIPT_ALIAS) > 0: APP_URL = '%s/%s' % (APP_URL, FORUM_SCRIPT_ALIAS[:-1]) @@ -72,17 +83,25 @@ for path in app_url_split[1].split('/')[1:]: if FORCE_SCRIPT_NAME.endswith('/'): FORCE_SCRIPT_NAME = FORCE_SCRIPT_NAME[:-1] -from forum import modules +#Module system initialization +MODULES_PACKAGE = 'forum_modules' +MODULES_FOLDER = os.path.join(SITE_SRC_ROOT, MODULES_PACKAGE) -modules.init_modules_engine(SITE_SRC_ROOT, DISABLED_MODULES) +MODULE_LIST = filter(lambda m: getattr(m, 'CAN_USE', True), [ + __import__('forum_modules.%s' % f, globals(), locals(), ['forum_modules']) + for f in os.listdir(MODULES_FOLDER) + if os.path.isdir(os.path.join(MODULES_FOLDER, f)) and + os.path.exists(os.path.join(MODULES_FOLDER, "%s/__init__.py" % f)) and + not f in DISABLED_MODULES +]) [MIDDLEWARE_CLASSES.extend( ["%s.%s" % (m.__name__, mc) for mc in getattr(m, 'MIDDLEWARE_CLASSES', [])] - ) for m in modules.MODULE_LIST] + ) for m in MODULE_LIST] [TEMPLATE_LOADERS.extend( ["%s.%s" % (m.__name__, tl) for tl in getattr(m, 'TEMPLATE_LOADERS', [])] - ) for m in modules.MODULE_LIST] + ) for m in MODULE_LIST] INSTALLED_APPS = [ @@ -93,7 +112,7 @@ INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.humanize', 'django.contrib.sitemaps', - 'django.contrib.markup', + 'django.contrib.messages', 'forum', ] @@ -111,6 +130,13 @@ try: except: pass +# Try loading Gunicorn web server +try: + import gunicorn + INSTALLED_APPS.append('gunicorn') +except ImportError: + pass + if not DEBUG: try: import rosetta