From aadee36e10a6e28a83dfa929471356fa2ec33a0c Mon Sep 17 00:00:00 2001 From: Antoine Nguyen Date: Tue, 26 Jun 2012 09:52:02 +0200 Subject: [PATCH] We don't handle the url prefix in modoboa anymore. (this information depends on each setup) fixes #275 --- modoboa/extensions/__init__.py | 6 ++++-- modoboa/urls.py | 17 +++++------------ 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/modoboa/extensions/__init__.py b/modoboa/extensions/__init__.py index 9d82f0420..1fb2e4910 100644 --- a/modoboa/extensions/__init__.py +++ b/modoboa/extensions/__init__.py @@ -50,7 +50,7 @@ class ExtensionsPool(object): instance = self.get_extension(name) return instance.infos() - def load_all(self, prefix): + def load_all(self): from modoboa.admin.models import Extension result = [] @@ -58,12 +58,14 @@ class ExtensionsPool(object): extinstance = self.get_extension(extname) try: ext = Extension.objects.get(name=extname) + if ext is None: + continue if ext.enabled: extinstance.load() except Extension.DoesNotExist: pass baseurl = extinstance.url if extinstance.url is not None else extname - result += [(r'%s%s/' % (prefix, baseurl), + result += [(r'^%s/' % (baseurl), include("%s.urls" % extinstance.__module__))] return result diff --git a/modoboa/urls.py b/modoboa/urls.py index a13b0fb41..87f748372 100644 --- a/modoboa/urls.py +++ b/modoboa/urls.py @@ -3,27 +3,20 @@ from django.conf import settings from modoboa.extensions import * from modoboa.lib import parameters -prefix = settings.MODOBOA_WEBPATH -if prefix != "": - if prefix.startswith("/"): - prefix = prefix[1:] - if not prefix.endswith("/"): - prefix += "/" - urlpatterns = patterns('', - (r'^%s$' % prefix, 'modoboa.lib.webutils.topredirection'), - (r'^%sadmin/' % prefix, include('modoboa.admin.urls')), - (r'^%suserprefs/' % prefix, include('modoboa.userprefs.urls')), + (r'^$', 'modoboa.lib.webutils.topredirection'), + (r'^admin/', include('modoboa.admin.urls')), + (r'^userprefs/', include('modoboa.userprefs.urls')), (r'^accounts/login/$', 'modoboa.auth.views.dologin'), (r'^accounts/logout/$', 'modoboa.auth.views.dologout'), (r'^jsi18n/$', 'django.views.i18n.javascript_catalog', {'packages': ('modoboa',),}), - *exts_pool.load_all(prefix) + *exts_pool.load_all() ) if 'modoboa.demo' in settings.INSTALLED_APPS: urlpatterns += patterns('', - (r'%sdemo/' % prefix, include('modoboa.demo.urls')) + (r'^demo/', include('modoboa.demo.urls')) ) if settings.DEBUG: