2020-03-09 21:13:11 +00:00
|
|
|
# Copyright (C) 2018-2020 by BDE ENS Paris-Saclay
|
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
|
|
|
|
from django.utils.translation import gettext_lazy as _
|
2020-03-07 23:24:33 +00:00
|
|
|
import re
|
2020-03-09 21:13:11 +00:00
|
|
|
|
2020-01-27 20:49:02 +00:00
|
|
|
from .base import *
|
|
|
|
|
2020-03-07 21:28:59 +00:00
|
|
|
|
2020-01-29 17:21:46 +00:00
|
|
|
def read_env():
|
|
|
|
"""Pulled from Honcho code with minor updates, reads local default
|
|
|
|
environment variables from a .env file located in the project root
|
|
|
|
directory.
|
|
|
|
"""
|
|
|
|
try:
|
|
|
|
with open('.env') as f:
|
|
|
|
content = f.read()
|
|
|
|
except IOError:
|
|
|
|
content = ''
|
|
|
|
for line in content.splitlines():
|
|
|
|
m1 = re.match(r'\A([A-Za-z_0-9]+)=(.*)\Z', line)
|
|
|
|
if m1:
|
|
|
|
key, val = m1.group(1), m1.group(2)
|
|
|
|
m2 = re.match(r"\A'(.*)'\Z", val)
|
|
|
|
if m2:
|
|
|
|
val = m2.group(1)
|
|
|
|
m3 = re.match(r'\A"(.*)"\Z', val)
|
|
|
|
if m3:
|
|
|
|
val = re.sub(r'\\(.)', r'\1', m3.group(1))
|
|
|
|
os.environ.setdefault(key, val)
|
|
|
|
|
2020-03-07 21:28:59 +00:00
|
|
|
|
2020-01-29 17:21:46 +00:00
|
|
|
read_env()
|
|
|
|
|
2020-01-27 20:49:02 +00:00
|
|
|
app_stage = os.environ.get('DJANGO_APP_STAGE', 'dev')
|
|
|
|
if app_stage == 'prod':
|
|
|
|
from .production import *
|
2020-03-07 21:28:59 +00:00
|
|
|
|
|
|
|
DATABASES["default"]["PASSWORD"] = os.environ.get('DJANGO_DB_PASSWORD', 'CHANGE_ME_IN_ENV_SETTINGS')
|
|
|
|
SECRET_KEY = os.environ.get('DJANGO_SECRET_KEY', 'CHANGE_ME_IN_ENV_SETTINGS')
|
2020-03-08 22:03:35 +00:00
|
|
|
ALLOWED_HOSTS = [os.environ.get('ALLOWED_HOSTS', 'localhost')]
|
2020-01-27 20:49:02 +00:00
|
|
|
else:
|
|
|
|
from .development import *
|
2020-01-28 09:28:29 +00:00
|
|
|
|
2020-02-18 12:03:58 +00:00
|
|
|
try:
|
2020-03-08 22:03:35 +00:00
|
|
|
#in secrets.py defines everything you want
|
2020-02-18 12:03:58 +00:00
|
|
|
from .secrets import *
|
|
|
|
except ImportError:
|
|
|
|
pass
|
|
|
|
|
2020-03-08 22:03:35 +00:00
|
|
|
if "cas" in INSTALLED_APPS:
|
|
|
|
MIDDLEWARE += ['cas.middleware.CASMiddleware']
|
|
|
|
# CAS Settings
|
|
|
|
CAS_AUTO_CREATE_USER = False
|
|
|
|
CAS_LOGO_URL = "/static/img/Saperlistpopette.png"
|
|
|
|
CAS_FAVICON_URL = "/static/favicon/favicon-32x32.png"
|
|
|
|
CAS_SHOW_SERVICE_MESSAGES = True
|
|
|
|
CAS_SHOW_POWERED = False
|
|
|
|
CAS_REDIRECT_TO_LOGIN_AFTER_LOGOUT = False
|
|
|
|
CAS_INFO_MESSAGES = {
|
|
|
|
"cas_explained": {
|
|
|
|
"message": _(
|
|
|
|
u"The Central Authentication Service grants you access to most of our websites by "
|
|
|
|
u"authenticating only once, so you don't need to type your credentials again unless "
|
|
|
|
u"your session expires or you logout."
|
|
|
|
),
|
|
|
|
"discardable": True,
|
|
|
|
"type": "info", # one of info, success, info, warning, danger
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
CAS_INFO_MESSAGES_ORDER = [
|
|
|
|
'cas_explained',
|
|
|
|
]
|
|
|
|
AUTHENTICATION_BACKENDS += ('cas.backends.CASBackend',)
|
|
|
|
|
|
|
|
if "debug_toolbar" in INSTALLED_APPS:
|
|
|
|
MIDDLEWARE.insert(1,"debug_toolbar.middleware.DebugToolbarMiddleware")
|
|
|
|
INTERNAL_IPS = [ '127.0.0.1']
|