diff --git a/conservancy/settings/base.py b/conservancy/settings/base.py new file mode 100644 index 0000000000000000000000000000000000000000..611ce1a01ff7d7a5a5de35da62a581916f577df8 --- /dev/null +++ b/conservancy/settings/base.py @@ -0,0 +1,145 @@ +# Copyright 2005-2008, James Garrison +# Copyright 2010, Bradley M. Kuhn + +# This software's license gives you freedom; you can copy, convey, +# propagate, redistribute, modify and/or redistribute modified versions of +# this program under the terms of the GNU Affero General Public License +# (AGPL) as published by the Free Software Foundation (FSF), either +# version 3 of the License, or (at your option) any later version of the +# AGPL published by the FSF. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero +# General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program in a file in the toplevel directory called +# "AGPLv3". If not, see . + +from pathlib import Path + +SITE_ID = 2 +ROOT_URLCONF = 'conservancy.urls' + +REDIRECT_TABLE = { + 'www.sf-conservancy.org': 'sfconservancy.org', +} + +LOGGING = { + 'version': 1, + 'disable_existing_loggers': False, + 'formatters': { + 'default': { + 'format': '%(asctime)s %(levelname)s %(name)s: %(message)s', + 'datefmt': '%Y-%m-%d %H:%M:%S', + }, + }, + 'filters': { + 'require_debug_false': { + '()': 'django.utils.log.RequireDebugFalse' + } + }, + 'handlers': { + 'mail_admins': { + 'level': 'ERROR', + 'filters': ['require_debug_false'], + 'class': 'django.utils.log.AdminEmailHandler' + }, + 'console': { + 'level': 'DEBUG', + 'class': 'logging.StreamHandler', + 'formatter': 'default', + }, + }, + 'loggers': { + 'django.request': { + 'handlers': ['mail_admins'], + 'level': 'ERROR', + 'propagate': True, + }, + # Avoid email notification on DisallowedHost error. + 'django.security.DisallowedHost': { + 'handlers': ['console'], + 'propagate': False, + }, + }, + 'root': { + 'handlers': ['console'], + 'level': 'INFO', + }, +} + +INSTALLED_APPS = [ + 'django.contrib.auth', + 'django.contrib.contenttypes', + 'django.contrib.sessions', + 'django.contrib.sites', + 'django.contrib.admin', + 'django.contrib.messages', + 'django.contrib.humanize', + 'django.contrib.staticfiles', + 'conservancy.blog', + 'conservancy.contacts', + 'conservancy.contractpatch', + 'conservancy.events', + 'conservancy.news', + 'conservancy.staff', + # 'conservancy.summit_registration', + 'conservancy.worldmap', + 'conservancy.supporters', + 'conservancy.fundgoal', + 'conservancy.assignment', + 'conservancy.fossy', + 'conservancy.podjango', + 'conservancy.usethesource.apps.UseTheSourceConfig', +] + +DEFAULT_AUTO_FIELD = 'django.db.models.AutoField' + +BASE_DIR = Path(__file__).resolve().parent.parent +TEMPLATES = [ + { + 'BACKEND': 'django.template.backends.django.DjangoTemplates', + 'DIRS': [ + BASE_DIR / 'templates', + BASE_DIR / 'static', + ], + 'APP_DIRS': True, + 'OPTIONS': { + 'context_processors': [ + 'django.template.context_processors.debug', + 'django.template.context_processors.request', + 'django.contrib.auth.context_processors.auth', + 'django.contrib.messages.context_processors.messages', + 'conservancy.local_context_processors.host_url', + 'conservancy.local_context_processors.sitefundraiser', + ] + } + } +] + +# Internationalization +TIME_ZONE = 'America/New_York' +LANGUAGE_CODE = 'en-us' + +STATIC_URL = '/static/' +STATIC_ROOT = BASE_DIR.parent / 'collected_static' +STATICFILES_DIRS = [ + BASE_DIR / 'static', +] + +MEDIA_URL = '/media/' + +MIDDLEWARE = [ + 'django.middleware.common.CommonMiddleware', + 'django.contrib.sessions.middleware.SessionMiddleware', + 'django.contrib.auth.middleware.AuthenticationMiddleware', + 'django.contrib.messages.middleware.MessageMiddleware', + 'conservancy.middleware.ForceCanonicalHostnameMiddleware', +] + +USETHESOURCE = { + 'SENDER': 'compliance@sfconservancy.org', + 'LIST_RECIPIENT': 'ccs-review@lists.sfconservancy.org', +}