From 18a0f5610cec7ccf56c52d8ddb6d914b520cf505 Mon Sep 17 00:00:00 2001 From: Antoine Nguyen Date: Thu, 12 Apr 2018 16:48:40 +0200 Subject: [PATCH] Load admin settings. --- modoboa/admin/settings.py | 27 +++++++++++++++++++ .../core/commands/templates/settings.py.tpl | 4 +++ 2 files changed, 31 insertions(+) create mode 100644 modoboa/admin/settings.py diff --git a/modoboa/admin/settings.py b/modoboa/admin/settings.py new file mode 100644 index 000000000..4898b0ddf --- /dev/null +++ b/modoboa/admin/settings.py @@ -0,0 +1,27 @@ +"""Default admin app settings.""" + +import os + +PLUGIN_BASE_DIR = os.path.dirname(__file__) + +ADMIN_STATS_FILES = { + "dev": os.path.join( + PLUGIN_BASE_DIR, "../frontend/webpack-stats.json"), + "prod": os.path.join( + PLUGIN_BASE_DIR, "static/admin/webpack-stats.json") +} + + +def apply(settings): + """Modify settings.""" + DEBUG = settings['DEBUG'] + if "webpack_loader" not in settings["INSTALLED_APPS"]: + settings["INSTALLED_APPS"] += ("webpack_loader", ) + settings["WEBPACK_LOADER"] = { + "CALENDAR": { + "CACHE": not DEBUG, + "BUNDLE_DIR_NAME": "admin/", + "STATS_FILE": ADMIN_STATS_FILES.get("dev" if DEBUG else "prod"), + "IGNORE": [".+\.hot-update.js", ".+\.map"] + } + } diff --git a/modoboa/core/commands/templates/settings.py.tpl b/modoboa/core/commands/templates/settings.py.tpl index 3f7ec5cf8..6b0c9f68f 100644 --- a/modoboa/core/commands/templates/settings.py.tpl +++ b/modoboa/core/commands/templates/settings.py.tpl @@ -299,6 +299,10 @@ SILENCED_SYSTEM_CHECKS = [ "security.W019", # modoboa uses iframes to display e-mails ] +# Load admin settings +from modoboa.admin import settings as admin_settings +admin_settings.apply(globals()) + # Load settings from extensions {% for extension in extra_settings %} try: