From e09554383d6916b840e161ea384cdf21b9f7338e Mon Sep 17 00:00:00 2001 From: Antoine Nguyen Date: Sat, 18 May 2013 10:45:45 +0200 Subject: [PATCH] Ensure that modo extensions are loaded at startup. fixes #417 --- modoboa/core/templates/settings.py | 11 ++++++++--- modoboa/extensions/__init__.py | 4 +++- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/modoboa/core/templates/settings.py b/modoboa/core/templates/settings.py index d75b9cc43..3c3ae5a7a 100644 --- a/modoboa/core/templates/settings.py +++ b/modoboa/core/templates/settings.py @@ -140,6 +140,12 @@ INSTALLED_APPS = ( 'modoboa', 'modoboa.auth', 'modoboa.lib', + + # Extra tools + # 'modoboa.tools.pfxadmin_migrate', +) + +MODOBOA_EXTENSIONS = ( 'modoboa.admin', 'modoboa.userprefs', @@ -150,11 +156,10 @@ INSTALLED_APPS = ( 'modoboa.extensions.stats', {% if not amavis_conn %}#{% endif %}'modoboa.extensions.amavis', 'modoboa.extensions.sievefilters', - - # Extra tools - # 'modoboa.tools.pfxadmin_migrate', ) +INSTALLED_APPS += MODOBOA_EXTENSIONS + AUTH_USER_MODEL = 'admin.User' AUTHENTICATION_BACKENDS = ( diff --git a/modoboa/extensions/__init__.py b/modoboa/extensions/__init__.py index f0e9f70e5..cb6bdf41b 100644 --- a/modoboa/extensions/__init__.py +++ b/modoboa/extensions/__init__.py @@ -56,8 +56,10 @@ class ExtensionsPool(object): def load_all(self): from modoboa.admin.models import Extension + for ext in settings.MODOBOA_EXTENSIONS: + __import__(ext) result = [] - for extname, extdef in self.extensions.iteritems(): + for extname in self.extensions.keys(): extinstance = self.get_extension(extname) if not extinstance.always_active: try: