Files @ 39b556b7ac4f
Branch filter:

Location: symposion_app/pinaxcon/settings.py - annotation

Sachi King
Mass style-check update

Seems okay.
04f246d85071
a239d12e2d8f
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
39b556b7ac4f
04f246d85071
04f246d85071
cfbf547dd916
cfbf547dd916
cfbf547dd916
6c94eb9e91ee
04f246d85071
04f246d85071
ff16f71df6e8
ff16f71df6e8
ff16f71df6e8
ff16f71df6e8
ff16f71df6e8
ff16f71df6e8
ff16f71df6e8
a239d12e2d8f
04f246d85071
a239d12e2d8f
ff16f71df6e8
ff16f71df6e8
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
1759a07630a8
1759a07630a8
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
a239d12e2d8f
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
ac7228ec5030
04f246d85071
04f246d85071
fdfe3c704550
fdfe3c704550
2cdb554623e5
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
3a686ab1a82e
ac7228ec5030
8d68cca01f87
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
fdfe3c704550
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
fdfe3c704550
04f246d85071
6c94eb9e91ee
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
6c94eb9e91ee
39b556b7ac4f
a3474fd9cd4c
6c94eb9e91ee
04f246d85071
fdfe3c704550
04f246d85071
6c94eb9e91ee
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
e8e20dd6d399
39b556b7ac4f
e8e20dd6d399
04f246d85071
04f246d85071
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
ac7228ec5030
01c5292653cc
ac7228ec5030
42ebbd06a1ea
04f246d85071
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
a239d12e2d8f
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
04f246d85071
04f246d85071
42ebbd06a1ea
39b556b7ac4f
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
04f246d85071
04f246d85071
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
42ebbd06a1ea
04f246d85071
6fa996f18357
6fa996f18357
6fa996f18357
6fa996f18357
6fa996f18357
42ebbd06a1ea
42ebbd06a1ea
a239d12e2d8f
42ebbd06a1ea
42ebbd06a1ea
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
2cdb554623e5
2cdb554623e5
04f246d85071
04f246d85071
04f246d85071
a239d12e2d8f
2cdb554623e5
04f246d85071
04f246d85071
04f246d85071
ff16f71df6e8
04f246d85071
04f246d85071
04f246d85071
04f246d85071
04f246d85071
4c458fd584d3
4c458fd584d3
57ed5e546b34
52d443790fdb
57ed5e546b34
57ed5e546b34
57ed5e546b34
57ed5e546b34
df808d52f3fc
35bb7102503c
35bb7102503c
35bb7102503c
b66db0a4a89b
04f246d85071
57ed5e546b34
39b556b7ac4f
39b556b7ac4f
fdfe3c704550
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
a3474fd9cd4c
fdfe3c704550
a239d12e2d8f
fdfe3c704550
ff16f71df6e8
fdfe3c704550
6c94eb9e91ee
e8e20dd6d399
6eef5efcfb3c
6eef5efcfb3c
6eef5efcfb3c
e8e20dd6d399
e8e20dd6d399
e8e20dd6d399
e8e20dd6d399
e8e20dd6d399
e8e20dd6d399
e8e20dd6d399
e8e20dd6d399
6b7618cc5420
6b7618cc5420
6b7618cc5420
7c5ca8d3993c
7c5ca8d3993c
7c5ca8d3993c
39b556b7ac4f
7c5ca8d3993c
6eef5efcfb3c
import os
from django.utils.crypto import get_random_string


PROJECT_ROOT = os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir))
PACKAGE_ROOT = os.path.abspath(os.path.dirname(__file__))
BASE_DIR = PACKAGE_ROOT

DEBUG = True  # bool(int(os.environ.get("DEBUG", "1")))

DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.sqlite3",
        "NAME": os.path.join(PROJECT_ROOT, "dev.db"),
    }
}

CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.dummy.DummyCache',
    }
}


ALLOWED_HOSTS = ['lca2018.org']

TIME_ZONE = "Australia/Sydney"
DATE_FORMAT = "j F Y"
LANGUAGE_CODE = "en-au"

SITE_ID = int(os.environ.get("SITE_ID", 1))
USE_I18N = True
USE_L10N = True
USE_TZ = True

MEDIA_ROOT = os.path.join(PACKAGE_ROOT, "site_media", "media")
MEDIA_URL = "/site_media/media/"

STATIC_ROOT = os.path.join(PROJECT_ROOT, "static", "dist")
STATIC_URL = "/static/dist/"

STATICFILES_FINDERS = [
    "django.contrib.staticfiles.finders.FileSystemFinder",
    "django.contrib.staticfiles.finders.AppDirectoriesFinder",
]

SECRET_KEY = os.environ.get("DJANGO_SECRET_KEY", get_random_string(length=64))

TEMPLATES = [
    {
        "BACKEND": "django.template.backends.django.DjangoTemplates",
        "DIRS": [
            os.path.join(PACKAGE_ROOT, "templates"),
        ],
        "APP_DIRS": True,
        "OPTIONS": {
            "debug": DEBUG,
            "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.tz",
                "django.core.context_processors.request",
                "django.contrib.messages.context_processors.messages",
                "account.context_processors.account",
                "pinax_theme_bootstrap.context_processors.theme",
                "symposion.reviews.context_processors.reviews",
            ],
        },
    },
]

MIDDLEWARE_CLASSES = [
    "django.contrib.sessions.middleware.SessionMiddleware",
    "django.middleware.common.CommonMiddleware",
    "django.middleware.csrf.CsrfViewMiddleware",
    "django.contrib.auth.middleware.AuthenticationMiddleware",
    "django.contrib.auth.middleware.SessionAuthenticationMiddleware",
    "django.contrib.messages.middleware.MessageMiddleware",
    "debug_toolbar.middleware.DebugToolbarMiddleware",
    "reversion.middleware.RevisionMiddleware",
    "django.middleware.clickjacking.XFrameOptionsMiddleware",
    'wagtail.wagtailcore.middleware.SiteMiddleware',
    'wagtail.wagtailredirects.middleware.RedirectMiddleware',
    'pinaxcon.monkey_patch.MonkeyPatchMiddleware',
]

ROOT_URLCONF = "pinaxcon.urls"

# Python dotted path to the WSGI application used by Django's runserver.
WSGI_APPLICATION = "pinaxcon.wsgi.application"

INSTALLED_APPS = [
    "django.contrib.admin",
    "django.contrib.auth",
    "django.contrib.contenttypes",
    "django.contrib.messages",
    "django.contrib.sessions",
    "django.contrib.sites",
    "django.contrib.staticfiles",
    "django.contrib.humanize",
    "debug_toolbar",

    # theme
    "bootstrapform",
    "pinax_theme_bootstrap",

    # external
    "account",
    "easy_thumbnails",
    "taggit",
    "reversion",
    "metron",
    "sitetree",
    "pinax.eventlog",

    # wagtail
    'wagtail.wagtailforms',
    'wagtail.wagtailredirects',
    'wagtail.wagtailembeds',
    'wagtail.wagtailsites',
    'wagtail.wagtailusers',
    'wagtail.wagtailsnippets',
    'wagtail.wagtaildocs',
    'wagtail.wagtailimages',
    'wagtail.wagtailsearch',
    'wagtail.wagtailadmin',
    'wagtail.wagtailcore',

    'modelcluster',


    # symposion
    "symposion",
    "symposion.conference",
    "symposion.proposals",
    "symposion.reviews",
    "symposion.schedule",
    "symposion.speakers",
    "symposion.sponsorship",
    "symposion.teams",
    "pinax.boxes",

    # Registrasion
    "registrasion",

    # Registrasion-stipe
    "pinax.stripe",
    "django_countries",
    "registripe",

    # admin - required by registrasion ??
    "nested_admin",

    # project
    "cms_pages",
    "pinaxcon",
    "pinaxcon.proposals",
    "pinaxcon.registrasion",
    "jquery",
    "djangoformsetjs",

    # testing
    "django_nose",
]

DEBUG_TOOLBAR_PANELS = [
    'debug_toolbar.panels.versions.VersionsPanel',
    'debug_toolbar.panels.timer.TimerPanel',
    'debug_toolbar.panels.settings.SettingsPanel',
    'debug_toolbar.panels.headers.HeadersPanel',
    'debug_toolbar.panels.request.RequestPanel',
    'debug_toolbar.panels.sql.SQLPanel',
    'debug_toolbar.panels.staticfiles.StaticFilesPanel',
    'debug_toolbar.panels.templates.TemplatesPanel',
    'debug_toolbar.panels.cache.CachePanel',
    'debug_toolbar.panels.signals.SignalsPanel',
    'debug_toolbar.panels.logging.LoggingPanel',
    'debug_toolbar.panels.redirects.RedirectsPanel',
]

DEBUG_TOOLBAR_CONFIG = {
    'INTERCEPT_REDIRECTS': False,
    'SHOW_TOOLBAR_CALLBACK': lambda x: DEBUG,
}

LOGGING = {
    'version': 1,
    'disable_existing_loggers': False,
    'formatters': {
        'verbose': {
            'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
        },
        'simple': {
            'format': '%(asctime)s %(levelname)s $(module)s %(message)s'
        },
    },
    'filters': {
        'require_debug_false': {
            '()': 'django.utils.log.RequireDebugFalse'
        }
    },
    'handlers': {
        'console': {
            'level': 'DEBUG',
            'class': 'logging.StreamHandler',
            'formatter': 'simple'
        },
        'mail_admins': {
            'level': 'ERROR',
            'filters': ['require_debug_false'],
            'class': 'django.utils.log.AdminEmailHandler',
            'include_html': True,
        }
    },
    'loggers': {
        'django.request': {
            'handlers': ['mail_admins'],
            'level': 'DEBUG',
            'propagate': True,
        },
        'symposion.request': {
            'handlers': ['mail_admins'],
            'level': 'DEBUG',
            'propagate': True,
        },
    },
    'root': {
        'handlers': ['console'],
        'level': 'DEBUG'
    },
}
FIXTURE_DIRS = [
    os.path.join(PROJECT_ROOT, "fixtures"),
]

EMAIL_BACKEND = "django.core.mail.backends.console.EmailBackend"

ACCOUNT_OPEN_SIGNUP = True
ACCOUNT_EMAIL_UNIQUE = True
ACCOUNT_EMAIL_CONFIRMATION_REQUIRED = False
ACCOUNT_LOGIN_REDIRECT_URL = "dashboard"
ACCOUNT_LOGOUT_REDIRECT_URL = "/"
ACCOUNT_EMAIL_CONFIRMATION_EXPIRE_DAYS = 2
ACCOUNT_USE_AUTH_AUTHENTICATE = True

THEME_CONTACT_EMAIL = "team@lca2018.org"

AUTHENTICATION_BACKENDS = [
    "symposion.teams.backends.TeamPermissionsBackend",
    "account.auth_backends.UsernameAuthenticationBackend",
    "account.auth_backends.EmailAuthenticationBackend",
]

CONFERENCE_ID = 1
PROPOSAL_FORMS = {
    "talk": "pinaxcon.proposals.forms.TalkProposalForm",
    "tutorial": "pinaxcon.proposals.forms.TutorialProposalForm",
    "miniconf": "pinaxcon.proposals.forms.MiniconfProposalForm",
    "sysadmin-miniconf": "pinaxcon.proposals.forms.SysAdminProposalForm",
    "openradio-miniconf": "pinaxcon.proposals.forms.RadioProposalForm",
    "wootconf-miniconf": "pinaxcon.proposals.forms.WootconfProposalForm",
    "writethedocs-miniconf": "pinaxcon.proposals.forms.WriteTheDocsProposalForm",
    "security-miniconf": "pinaxcon.proposals.forms.SecurityProposalForm",
    "kernel-miniconf": "pinaxcon.proposals.forms.KernelProposalForm",
    "games-miniconf": "pinaxcon.proposals.forms.GamesProposalForm",
    "testing-miniconf": "pinaxcon.proposals.forms.TestingProposalForm",
    "knowledge-miniconf": "pinaxcon.proposals.forms.KnowledgeProposalForm",
    "lawpolicy-miniconf": "pinaxcon.proposals.forms.LawProposalForm",
    "openhardware-miniconf": "pinaxcon.proposals.forms.OpenHardwareProposalForm",
}

# PINAX_PAGES_HOOKSET = "pinaxcon.hooks.PinaxPagesHookSet"
# PINAX_BOXES_HOOKSET = "pinaxcon.hooks.PinaxBoxesHookSet"

# Registrasion bits:
ATTENDEE_PROFILE_MODEL = "pinaxcon.registrasion.models.AttendeeProfile"
ATTENDEE_PROFILE_FORM = "pinaxcon.registrasion.forms.ProfileForm"
INVOICE_CURRENCY = "AUD"
PINAX_STRIPE_PUBLIC_KEY = os.environ.get("STRIPE_PUBLIC_KEY", "your test public key")
PINAX_STRIPE_SECRET_KEY = os.environ.get("STRIPE_SECRET_KEY", "your test secret key")
PINAX_STRIPE_SEND_EMAIL_RECEIPTS = False

# Wagtail config
WAGTAIL_SITE_NAME = 'linux.conf.au 2018'
WAGTAIL_APPEND_SLASH = True
WAGTAILIMAGES_IMAGE_MODEL = 'cms_pages.CustomImage'

ATTENDEE_PROFILE_FORM = "pinaxcon.registrasion.forms.ProfileForm"

# CSRF custom error screen
CSRF_FAILURE_VIEW = "pinaxcon.csrf_view.csrf_failure"

# Use nose to run all tests
TEST_RUNNER = 'django_nose.NoseTestSuiteRunner'

# Tell nose to measure coverage on the 'foo' and 'bar' apps
NOSE_ARGS = [
    '--with-coverage',
    '--cover-package=registrasion.controllers,registrasion.models',
]

# Production settings have their own file to override stuff here
try:
    LOCAL_SETTINGS
except NameError:
    try:
        from local_settings import *  # noqa: F401,F403
    except ImportError:
        pass