Files
empire/core/settings.py

224 lines
5.9 KiB
Python

import os
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/2.2/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'a$mpn=bgpoa^))l#_29*icq1cwf*_1-p!i9e$xy%1p-#hqja%w'
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = []
# Internationalization
# https://docs.djangoproject.com/en/2.2/topics/i18n/
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
LANGUAGES = [
('en', 'English'),
('fi', 'Finnish'),
('it', 'Italian'),
('ja', 'Japanese'),
('pt-br', 'Brazilian Portuguese'),
('ru', 'Russian'),
('sv', 'Swedish'),
('zh-hans', 'Simplified Chinese'),
('es', 'Spanish'),
]
PARLER_DEFAULT_LANGUAGE_CODE = "en"
PARLER_LANGUAGES = {
None: [{"code": c, "name": n} for (c, n) in LANGUAGES],
'default': {
'hide_untranslated': False,
}
}
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# Shuuuuuuuuuuuuuuuuup
'easy_thumbnails',
'shuup.themes.classic_gray',
'shuup.core',
'shuup.admin',
'shuup.addons',
'shuup.default_tax',
'shuup.front',
'shuup.front.apps.auth',
'shuup.front.apps.carousel',
'shuup.front.apps.customer_information',
'shuup.front.apps.personal_order_history',
'shuup.front.apps.saved_carts',
'shuup.front.apps.registration',
'shuup.front.apps.simple_order_notification',
'shuup.front.apps.simple_search',
'shuup.front.apps.recently_viewed_products',
'shuup.notify',
'shuup.simple_cms',
'shuup.customer_group_pricing',
'shuup.campaigns',
'shuup.simple_supplier',
'shuup.order_printouts',
'shuup.utils',
'shuup.xtheme',
'shuup.reports',
'shuup.default_reports',
'shuup.regions',
'shuup.importer',
'shuup.default_importer',
'shuup.gdpr',
'shuup.tasks',
'shuup.discounts',
# external apps
'bootstrap3',
'django_countries',
'django_jinja',
'django_filters',
'filer',
'reversion',
'registration',
'rest_framework',
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'shuup.front.middleware.ProblemMiddleware',
'shuup.core.middleware.ShuupMiddleware',
'shuup.front.middleware.ShuupFrontMiddleware',
'shuup.xtheme.middleware.XthemeMiddleware',
'shuup.admin.middleware.ShuupAdminMiddleware'
]
ROOT_URLCONF = 'core.urls'
TCP = [
"django.contrib.auth.context_processors.auth",
"django.template.context_processors.debug",
"django.template.context_processors.i18n",
"django.template.context_processors.media",
"django.template.context_processors.static",
"django.template.context_processors.request",
"django.template.context_processors.tz",
"django.contrib.messages.context_processors.messages"
]
TEMPLATES = [
{
"BACKEND": "django_jinja.backend.Jinja2",
"APP_DIRS": True,
"OPTIONS": {
"match_extension": ".jinja",
"context_processors": TCP,
"newstyle_gettext": True,
"environment": "shuup.xtheme.engine.XthemeEnvironment",
},
"NAME": "jinja2",
},
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"DIRS": [],
"APP_DIRS": True,
"OPTIONS": {
"context_processors": TCP,
"debug": DEBUG
}
},
]
# set login url here because of `login_required` decorators
LOGIN_URL = "/login/"
SESSION_SERIALIZER = "django.contrib.sessions.serializers.PickleSerializer"
SHUUP_PRICING_MODULE = "customer_group_pricing"
SHUUP_SETUP_WIZARD_PANE_SPEC = [
"shuup.admin.modules.shops.views:ShopWizardPane",
"shuup.admin.modules.service_providers.views.PaymentWizardPane",
"shuup.admin.modules.service_providers.views.CarrierWizardPane",
"shuup.xtheme.admin_module.views.ThemeWizardPane",
"shuup.testing.modules.sample_data.views.SampleObjectsWizardPane" if DEBUG else "",
"shuup.admin.modules.system.views.TelemetryWizardPane"
]
SHUUP_ERROR_PAGE_HANDLERS_SPEC = [
"shuup.admin.error_handlers:AdminPageErrorHandler",
"shuup.front.error_handlers:FrontPageErrorHandler"
]
SHUUP_SIMPLE_SEARCH_LIMIT = 150
if os.environ.get("SHUUP_WORKBENCH_DISABLE_MIGRATIONS") == "1":
from .utils import get_disabled_migrations
MIGRATION_MODULES = get_disabled_migrations()
def configure(setup):
setup.commit(globals())
WSGI_APPLICATION = 'core.wsgi.application'
# Database
# https://docs.djangoproject.com/en/2.2/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
# Password validation
# https://docs.djangoproject.com/en/2.2/ref/settings/#auth-password-validators
AUTH_PASSWORD_VALIDATORS = [
{
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
},
]
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/
STATIC_URL = '/static/'