settings.py 16.1 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
# -*- coding:utf-8 -*
#
# Copyright 2016,2017
# - Skia <skia@libskia.so>
#
# Ce fichier fait partie du site de l'Association des Étudiants de l'UTBM,
# http://ae.utbm.fr.
#
# This program is free software; you can redistribute it and/or modify it under
# the terms of the GNU General Public License a published by the Free Software
# Foundation; either version 3 of the License, or (at your option) any later
# version.
#
# 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 General Public License for more
# details.
#
# You should have received a copy of the GNU General Public License along with
# this program; if not, write to the Free Sofware Foundation, Inc., 59 Temple
# Place - Suite 330, Boston, MA 02111-1307, USA.
#
#

Skia's avatar
Skia committed
25 26 27 28 29 30 31 32 33 34 35 36 37 38
"""
Django settings for sith project.

Generated by 'django-admin startproject' using Django 1.8.6.

For more information on this file, see
https://docs.djangoproject.com/en/1.8/topics/settings/

For the full list of settings and their values, see
https://docs.djangoproject.com/en/1.8/ref/settings/
"""

# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
import os
Skia's avatar
Skia committed
39
import binascii
Skia's avatar
Skia committed
40
from django.utils.translation import ugettext_lazy as _
Skia's avatar
Skia committed
41 42 43

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

Sli's avatar
Sli committed
44
os.environ['HTTPS'] = "off"
Skia's avatar
Skia committed
45 46 47 48 49 50 51 52

# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.8/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = '(4sjxvhz@m5$0a$j0_pqicnc$s!vbve)z+&++m%g%bjhlz4+g2'

# SECURITY WARNING: don't run with debug turned on in production!
Skia's avatar
Skia committed
53
DEBUG = False
Skia's avatar
Skia committed
54
INTERNAL_IPS = ['127.0.0.1']
Skia's avatar
Skia committed
55

Skia's avatar
Skia committed
56
ALLOWED_HOSTS = ['*']
Skia's avatar
Skia committed
57 58 59 60


# Application definition

61
SITE_ID = 4000
62

Skia's avatar
Skia committed
63 64 65 66 67 68 69
INSTALLED_APPS = (
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
70
    'django.contrib.sites',
Skia's avatar
Skia committed
71
    'django_jinja',
Skia's avatar
Skia committed
72
    'rest_framework',
73
    'ajax_select',
Skia's avatar
Skia committed
74
    'haystack',
Skia's avatar
Skia committed
75 76 77 78 79
    'core',
    'club',
    'subscription',
    'accounting',
    'counter',
Skia's avatar
Skia committed
80
    'eboutic',
Skia's avatar
Skia committed
81
    'launderette',
Skia's avatar
Skia committed
82
    'api',
Skia's avatar
Skia committed
83
    'rootplace',
Skia's avatar
Skia committed
84
    'sas',
85
    'com',
Sli's avatar
Sli committed
86
    'election',
Skia's avatar
Skia committed
87
    'forum',
Skia's avatar
Skia committed
88
    'stock',
Skia's avatar
Skia committed
89 90 91 92 93 94 95 96 97
)

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',
Skia's avatar
Skia committed
98
    'django.middleware.locale.LocaleMiddleware',
Skia's avatar
Skia committed
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
    'django.middleware.clickjacking.XFrameOptionsMiddleware',
    'django.middleware.security.SecurityMiddleware',
    'core.middleware.AuthenticationMiddleware',
)

ROOT_URLCONF = 'sith.urls'

TEMPLATES = [
    {
        "NAME": "jinja2",
        "BACKEND": "django_jinja.backend.Jinja2",
        "APP_DIRS": True,
        "OPTIONS": {
            "match_extension": ".jinja",
            "app_dirname": "templates",
            "newstyle_gettext": True,
            "context_processors": [
                    "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.tz",
                    "django.contrib.messages.context_processors.messages",
                ],
            "extensions": [
                "jinja2.ext.do",
                "jinja2.ext.loopcontrols",
                "jinja2.ext.with_",
                "jinja2.ext.i18n",
                "jinja2.ext.autoescape",
                "django_jinja.builtins.extensions.CsrfExtension",
                "django_jinja.builtins.extensions.CacheExtension",
                "django_jinja.builtins.extensions.TimezoneExtension",
                "django_jinja.builtins.extensions.UrlsExtension",
                "django_jinja.builtins.extensions.StaticFilesExtension",
                "django_jinja.builtins.extensions.DjangoFiltersExtension",
            ],
            "filters": {
                "markdown": "core.templatetags.renderer.markdown",
            },
            "globals": {
                "can_edit_prop": "core.views.can_edit_prop",
                "can_edit": "core.views.can_edit",
                "can_view": "core.views.can_view",
                "settings": "sith.settings",
Skia's avatar
Skia committed
145
                "Launderette": "launderette.models.Launderette",
Skia's avatar
Skia committed
146
                "Counter": "counter.models.Counter",
147
                "ProductType": "counter.models.ProductType",
Skia's avatar
Skia committed
148
                "timezone": "django.utils.timezone",
149
                "get_sith": "com.views.sith",
Sli's avatar
Sli committed
150
                "scss": "core.templatetags.scss.scss",
Skia's avatar
Skia committed
151 152 153 154 155 156 157
            },
            "bytecode_cache": {
                "name": "default",
                "backend": "django_jinja.cache.BytecodeCache",
                "enabled": False,
            },
            "autoescape": True,
Skia's avatar
Skia committed
158
            "auto_reload": True,
Skia's avatar
Skia committed
159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176
            "translation_engine": "django.utils.translation",
        }
    },
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        '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',
            ],
        },
    },
]

Skia's avatar
Skia committed
177 178 179 180 181 182 183
HAYSTACK_CONNECTIONS = {
        'default': {
            'ENGINE': 'haystack.backends.whoosh_backend.WhooshEngine',
            'PATH': os.path.join(os.path.dirname(__file__), 'whoosh_index'),
            },
        }

184 185
HAYSTACK_SIGNAL_PROCESSOR = 'core.search_indexes.UserOnlySignalProcessor'

Krophil's avatar
Krophil committed
186 187
SASS_PRECISION = 8

Skia's avatar
Skia committed
188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204
WSGI_APPLICATION = 'sith.wsgi.application'


# Database
# https://docs.djangoproject.com/en/1.8/ref/settings/#databases

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
    }
}


# Internationalization
# https://docs.djangoproject.com/en/1.8/topics/i18n/

205
LANGUAGE_CODE = 'fr-FR'
Skia's avatar
Skia committed
206

Skia's avatar
Skia committed
207 208 209 210 211
LANGUAGES = [
        ('en', _('English')),
        ('fr', _('French')),
        ]

212
TIME_ZONE = 'Europe/Paris'
Skia's avatar
Skia committed
213 214 215 216 217 218 219

USE_I18N = True

USE_L10N = True

USE_TZ = True

Skia's avatar
Skia committed
220 221 222 223
LOCALE_PATHS = (
    os.path.join(BASE_DIR, "locale"),
)

224 225
PHONENUMBER_DEFAULT_REGION = "FR"

Skia's avatar
Skia committed
226 227 228 229 230 231 232 233
# Medias
MEDIA_ROOT = './data/'
MEDIA_URL = '/data/'

# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.8/howto/static-files/

STATIC_URL = '/static/'
Skia's avatar
Skia committed
234
STATIC_ROOT = './static/'
Skia's avatar
Skia committed
235

Krophil's avatar
Krophil committed
236 237 238 239
# Static files finders which allow to see static folder in all apps
STATICFILES_FINDERS = [
    'django.contrib.staticfiles.finders.FileSystemFinder',
    'django.contrib.staticfiles.finders.AppDirectoriesFinder',
Sli's avatar
Sli committed
240
    'core.scss.finder.ScssFinder',
Krophil's avatar
Krophil committed
241 242
]

Skia's avatar
Skia committed
243 244 245 246 247 248 249
# Auth configuration
AUTH_USER_MODEL = 'core.User'
AUTH_ANONYMOUS_MODEL = 'core.models.AnonymousUser'
LOGIN_URL = '/login'
LOGOUT_URL = '/logout'
LOGIN_REDIRECT_URL = '/'
DEFAULT_FROM_EMAIL="bibou@git.an"
250
SITH_COM_EMAIL="bibou_com@git.an"
Skia's avatar
Skia committed
251 252

# Email
Sli's avatar
Sli committed
253
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
Skia's avatar
Skia committed
254 255 256
EMAIL_HOST="localhost"
EMAIL_PORT=25

Skia's avatar
Skia committed
257 258 259 260 261 262 263 264 265 266 267 268 269
# Below this line, only Sith-specific variables are defined

IS_OLD_MYSQL_PRESENT = False
OLD_MYSQL_INFOS = {
        'host': 'ae-db',
        'user': "my_user",
        'passwd': "password",
        'db': "ae2-db",
        'charset': 'utf8',
        'use_unicode': True,
        }


Skia's avatar
Skia committed
270 271
SITH_URL = "my.url.git.an"
SITH_NAME = "Sith website"
272

Skia's avatar
Skia committed
273
# AE configuration
274
SITH_MAIN_CLUB_ID = 1 # TODO: keep only that first setting, with the ID, and do the same for the other clubs
Skia's avatar
Skia committed
275 276 277 278 279
SITH_MAIN_CLUB = {
        'name': "AE",
        'unix_name': "ae",
        'address': "6 Boulevard Anatole France, 90000 Belfort"
        }
280 281 282 283 284 285 286 287

# Bar managers
SITH_BAR_MANAGER = {
        'name': "BdF",
        'unix_name': "bdf",
        'address': "6 Boulevard Anatole France, 90000 Belfort"
        }

Skia's avatar
Skia committed
288 289 290 291 292 293 294
# Launderette managers
SITH_LAUNDERETTE_MANAGER = {
        'name': "Laverie",
        'unix_name': "laverie",
        'address': "6 Boulevard Anatole France, 90000 Belfort"
        }

Skia's avatar
Skia committed
295 296 297
# Define the date in the year serving as reference for the subscriptions calendar
# (month, day)
SITH_START_DATE = (8, 15) # 15th August
298

299 300 301
# Used to determine the valid promos
SITH_SCHOOL_START_YEAR = 1999

Skia's avatar
Skia committed
302
SITH_GROUP_ROOT_ID = 1
Skia's avatar
Skia committed
303
SITH_GROUP_PUBLIC_ID = 2
304 305 306 307 308 309 310 311 312 313 314
SITH_GROUP_SUBSCRIBERS_ID = 3
SITH_GROUP_OLD_SUBSCRIBERS_ID = 4
SITH_GROUP_ACCOUNTING_ADMIN_ID = 5
SITH_GROUP_COM_ADMIN_ID = 6
SITH_GROUP_COUNTER_ADMIN_ID = 7
SITH_GROUP_BANNED_ALCOHOL_ID = 8
SITH_GROUP_BANNED_COUNTER_ID = 9
SITH_GROUP_BANNED_SUBSCRIPTION_ID = 10
SITH_GROUP_SAS_ADMIN_ID = 11
SITH_GROUP_FORUM_ADMIN_ID = 12

Skia's avatar
Skia committed
315

Sli's avatar
Sli committed
316 317 318 319
SITH_CLUB_REFOUND_ID = 89
SITH_COUNTER_REFOUND_ID = 38
SITH_PRODUCT_REFOUND_ID = 5

Skia's avatar
Skia committed
320 321 322
# Forum

SITH_FORUM_PAGE_LENGTH = 30
Sli's avatar
Sli committed
323

Skia's avatar
Skia committed
324 325
# SAS variables
SITH_SAS_ROOT_DIR_ID = 4
Skia's avatar
Skia committed
326

Skia's avatar
Skia committed
327 328
SITH_BOARD_SUFFIX="-bureau"
SITH_MEMBER_SUFFIX="-membres"
Skia's avatar
Skia committed
329 330 331 332

SITH_MAIN_BOARD_GROUP=SITH_MAIN_CLUB['unix_name']+SITH_BOARD_SUFFIX
SITH_MAIN_MEMBERS_GROUP=SITH_MAIN_CLUB['unix_name']+SITH_MEMBER_SUFFIX

Skia's avatar
Skia committed
333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348
SITH_PROFILE_DEPARTMENTS = [
        ("TC", _("TC")),
        ("IMSI", _("IMSI")),
        ("IMAP", _("IMAP")),
        ("INFO", _("INFO")),
        ("GI", _("GI")),
        ("E", _("E")),
        ("EE", _("EE")),
        ("GESC", _("GESC")),
        ("GMC", _("GMC")),
        ("MC", _("MC")),
        ("EDIM", _("EDIM")),
        ("HUMA", _("Humanities")),
        ("NA", _("N/A")),
        ]

Skia's avatar
Skia committed
349
SITH_ACCOUNTING_PAYMENT_METHOD = [
Skia's avatar
Skia committed
350
        ('CHECK', _('Check')),
Skia's avatar
Skia committed
351
        ('CASH', _('Cash')),
Skia's avatar
Skia committed
352
        ('TRANSFERT', _('Transfert')),
Skia's avatar
Skia committed
353
        ('CARD', _('Credit card')),
Skia's avatar
Skia committed
354 355 356
        ]

SITH_SUBSCRIPTION_PAYMENT_METHOD = [
Skia's avatar
Skia committed
357 358
        ('CHECK', _('Check')),
        ('CARD', _('Credit card')),
Skia's avatar
Skia committed
359
        ('CASH', _('Cash')),
Skia's avatar
Skia committed
360
        ('EBOUTIC', _('Eboutic')),
Skia's avatar
Skia committed
361
        ('OTHER', _('Other')),
Skia's avatar
Skia committed
362 363
        ]

Skia's avatar
Skia committed
364 365 366 367
SITH_SUBSCRIPTION_LOCATIONS = [
        ('BELFORT', _('Belfort')),
        ('SEVENANS', _('Sevenans')),
        ('MONTBELIARD', _('Montbéliard')),
368
        ('EBOUTIC', _('Eboutic')),
Skia's avatar
Skia committed
369 370
        ]

371
SITH_COUNTER_BARS = [
372 373 374
        (1, "MDE"),
        (2, "Foyer"),
        (35, "La Gommette"),
375 376
        ]

Skia's avatar
Skia committed
377
SITH_COUNTER_PAYMENT_METHOD = [
Skia's avatar
Skia committed
378
        ('CHECK', _('Check')),
Skia's avatar
Skia committed
379
        ('CASH', _('Cash')),
380
        ('CARD', _('Credit card')),
Skia's avatar
Skia committed
381 382
        ]

383
SITH_COUNTER_BANK = [
Skia's avatar
Skia committed
384
        ('OTHER', 'Autre'),
385 386 387 388 389 390
        ('SOCIETE-GENERALE', 'Société générale'),
        ('BANQUE-POPULAIRE', 'Banque populaire'),
        ('BNP', 'BNP'),
        ('CAISSE-EPARGNE', 'Caisse d\'épargne'),
        ('CIC', 'CIC'),
        ('CREDIT-AGRICOLE', 'Crédit Agricole'),
Skia's avatar
Skia committed
391
        ('CREDIT-MUTUEL', 'Credit Mutuel'),
392 393
        ('CREDIT-LYONNAIS', 'Credit Lyonnais'),
        ('LA-POSTE', 'La Poste'),
394 395
        ]

Sli's avatar
Sli committed
396 397 398
# Defines pagination for cash summary
SITH_COUNTER_CASH_SUMMARY_LENGTH = 50

399
# Defines which product type is the refilling type, and thus increases the account amount
Skia's avatar
Skia committed
400
SITH_COUNTER_PRODUCTTYPE_REFILLING = 3
401

402
# Defines which product is the one year subscription and which one is the six month subscription
Skia's avatar
Skia committed
403 404 405
SITH_PRODUCT_SUBSCRIPTION_ONE_SEMESTER = 1
SITH_PRODUCT_SUBSCRIPTION_TWO_SEMESTERS = 2
SITH_PRODUCTTYPE_SUBSCRIPTION = 2
406

Skia's avatar
Skia committed
407 408
# Subscription durations are in semestres
# Be careful, modifying this parameter will need a migration to be applied
Skia's avatar
Skia committed
409 410
SITH_SUBSCRIPTIONS = {
    'un-semestre': {
Skia's avatar
Skia committed
411
        'name': _('One semester'),
Skia's avatar
Skia committed
412 413 414 415
        'price': 15,
        'duration': 1,
    },
    'deux-semestres': {
Skia's avatar
Skia committed
416
        'name': _('Two semesters'),
Skia's avatar
Skia committed
417 418 419 420
        'price': 28,
        'duration': 2,
    },
    'cursus-tronc-commun': {
Skia's avatar
Skia committed
421
        'name': _('Common core cursus'),
Skia's avatar
Skia committed
422 423 424 425
        'price': 45,
        'duration': 4,
    },
    'cursus-branche': {
Skia's avatar
Skia committed
426
        'name': _('Branch cursus'),
Skia's avatar
Skia committed
427 428 429
        'price': 45,
        'duration': 6,
    },
Skia's avatar
Skia committed
430
    'cursus-alternant': {
Skia's avatar
Skia committed
431
        'name': _('Alternating cursus'),
Skia's avatar
Skia committed
432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464
        'price': 30,
        'duration': 6,
    },
    'membre-honoraire': {
        'name': _('Honorary member'),
        'price': 0,
        'duration': 666,
    },
    'assidu': {
        'name': _('Assidu member'),
        'price': 0,
        'duration': 2,
    },
    'amicale/doceo': {
        'name': _('Amicale/DOCEO member'),
        'price': 0,
        'duration': 2,
    },
    'reseau-ut': {
        'name': _('UT network member'),
        'price': 0,
        'duration': 1,
    },
    'crous': {
        'name': _('CROUS member'),
        'price': 0,
        'duration': 2,
    },
    'sbarro/esta': {
        'name': _('Sbarro/ESTA member'),
        'price': 15,
        'duration': 2,
    },
Skia's avatar
Skia committed
465 466 467
# To be completed....
}

Sli's avatar
Sli committed
468 469 470 471 472 473 474 475 476 477 478 479 480 481
SITH_CLUB_ROLES = {}

SITH_CLUB_ROLES_ID = {
    'President': 10,
    'Vice-President': 9,
    'Treasurer': 7,
    'Communication supervisor': 5,
    'Secretary': 4,
    'IT supervisor': 3,
    'Board member': 2,
    'Active member': 1,
    'Curious': 0,
}

Sli's avatar
Sli committed
482 483 484 485 486 487 488 489 490 491 492
SITH_CLUB_ROLES = {
    10: _('President'),
    9: _('Vice-President'),
    7: _('Treasurer'),
    5: _('Communication supervisor'),
    4: _('Secretary'),
    3: _('IT supervisor'),
    2: _('Board member'),
    1: _('Active member'),
    0: _('Curious'),
}
Skia's avatar
Skia committed
493 494 495 496 497 498 499

# This corresponds to the maximum role a user can freely subscribe to
# In this case, SITH_MAXIMUM_FREE_ROLE=1 means that a user can set himself as "Membre actif" or "Curieux", but not higher
SITH_MAXIMUM_FREE_ROLE=1

# Minutes to timeout the logged barmen
SITH_BARMAN_TIMEOUT=20
Skia's avatar
Skia committed
500

Skia's avatar
Skia committed
501
# Minutes to delete the last operations
Skia's avatar
Skia committed
502
SITH_LAST_OPERATIONS_LIMIT=10
Skia's avatar
Skia committed
503

504
# Minutes for a counter to be inactive
Skia's avatar
Skia committed
505
SITH_COUNTER_MINUTE_INACTIVE=10
506

Skia's avatar
Skia committed
507 508
# ET variables
SITH_EBOUTIC_ET_URL = "https://preprod-tpeweb.e-transactions.fr/cgi/MYchoix_pagepaiement.cgi"
Skia's avatar
Skia committed
509 510 511
SITH_EBOUTIC_PBX_SITE = "4000666"
SITH_EBOUTIC_PBX_RANG = "42"
SITH_EBOUTIC_PBX_IDENTIFIANT = "123456789"
Skia's avatar
Skia committed
512
SITH_EBOUTIC_HMAC_KEY = binascii.unhexlify("0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF")
Skia's avatar
Skia committed
513 514 515 516
SITH_EBOUTIC_PUB_KEY = ""
with open('./sith/et_keys/pubkey.pem') as f:
    SITH_EBOUTIC_PUB_KEY = f.read()

Skia's avatar
Skia committed
517
# Launderette variables
518
SITH_LAUNDERETTE_MACHINE_TYPES = [('WASHING', _('Washing')), ('DRYING', _('Drying'))]
Skia's avatar
Skia committed
519 520 521 522
SITH_LAUNDERETTE_PRICES = {
        'WASHING': 1.0,
        'DRYING': 0.75,
        }
Skia's avatar
Skia committed
523

Skia's avatar
Skia committed
524
SITH_NOTIFICATIONS = [
Skia's avatar
Skia committed
525
        ('NEWS_MODERATION', _("A fresh new to be moderated")),
Skia's avatar
Skia committed
526 527 528 529 530 531
        ('FILE_MODERATION', _("New files to be moderated")),
        ('SAS_MODERATION', _("New pictures/album to be moderated in the SAS")),
        ('NEW_PICTURES', _("You've been identified on some pictures")),
        ('REFILLING', _("You just refilled of %s €")),
        ('SELLING', _("You just bought %s")),
        ('GENERIC', _("You have a notification")),
Skia's avatar
Skia committed
532 533
        ]

Skia's avatar
Skia committed
534 535 536 537 538
SITH_QUICK_NOTIF = {
        'qn_success': _("Success!"),
        'qn_fail': _("Fail!"),
        'qn_weekmail_new_article': _("You successfully posted an article in the Weekmail"),
        'qn_weekmail_article_edit': _("You successfully edited an article in the Weekmail"),
Skia's avatar
Skia committed
539
        'qn_weekmail_send_success': _("You successfully sent the Weekmail"),
Skia's avatar
Skia committed
540 541
        }

Skia's avatar
Skia committed
542 543
try:
    from .settings_custom import *
Skia's avatar
Skia committed
544
    print("Custom settings imported")
Skia's avatar
Skia committed
545 546
except:
    print("Custom settings failed")
Skia's avatar
Skia committed
547 548 549 550

if DEBUG:
    INSTALLED_APPS += ("debug_toolbar",)
    MIDDLEWARE_CLASSES = ('debug_toolbar.middleware.DebugToolbarMiddleware',) + MIDDLEWARE_CLASSES
Sli's avatar
Sli committed
551 552 553 554 555 556 557 558 559 560 561 562 563 564
    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',
        'sith.toolbar_debug.TemplatesPanel',
        'debug_toolbar.panels.cache.CachePanel',
        'debug_toolbar.panels.signals.SignalsPanel',
        'debug_toolbar.panels.logging.LoggingPanel',
        'debug_toolbar.panels.redirects.RedirectsPanel',
    ]
Sli's avatar
Sli committed
565 566 567
    SASS_INCLUDE_FOLDERS = [
        'core/static/',
    ]