passbook: implement dynamic URL loading
This commit is contained in:
@ -1,12 +1,15 @@
|
||||
|
||||
"""passbook URL Configuration"""
|
||||
from logging import getLogger
|
||||
|
||||
from django.conf import settings
|
||||
from django.contrib import admin
|
||||
from django.urls import include, path
|
||||
from django.views.generic import RedirectView
|
||||
|
||||
from passbook.core.views import authentication, overview
|
||||
from passbook.lib.utils.reflection import get_apps
|
||||
|
||||
LOGGER = getLogger(__name__)
|
||||
admin.autodiscover()
|
||||
admin.site.login = RedirectView.as_view(pattern_name='passbook_core:auth-login')
|
||||
|
||||
@ -16,20 +19,21 @@ core_urls = [
|
||||
]
|
||||
|
||||
urlpatterns = [
|
||||
# Core
|
||||
# Core (include our own URLs so namespaces are used everywhere)
|
||||
path('', include((core_urls, 'passbook_core'), namespace='passbook_core')),
|
||||
]
|
||||
|
||||
for _passbook_app in get_apps():
|
||||
if hasattr(_passbook_app, 'mountpoint'):
|
||||
_path = path(_passbook_app.mountpoint, include((_passbook_app.name+'.urls',
|
||||
_passbook_app.name),
|
||||
namespace=_passbook_app.label))
|
||||
urlpatterns.append(_path)
|
||||
LOGGER.debug("Loaded %s's URLs", _passbook_app.name)
|
||||
|
||||
urlpatterns += [
|
||||
# Administration
|
||||
path('administration/django/', admin.site.urls),
|
||||
path('administration/',
|
||||
include(('passbook.admin.urls', 'passbook_admin'), namespace='passbook_admin')),
|
||||
path('source/oauth/', include(('passbook.oauth_client.urls',
|
||||
'passbook_oauth_client'), namespace='passbook_oauth_client')),
|
||||
path('application/oauth/', include(('passbook.oauth_provider.urls',
|
||||
'passbook_oauth_provider'),
|
||||
namespace='passbook_oauth_provider')),
|
||||
path('application/saml/', include(('passbook.saml_idp.urls',
|
||||
'passbook_saml_idp'),
|
||||
namespace='passbook_saml_idp')),
|
||||
]
|
||||
|
||||
if settings.DEBUG:
|
||||
|
Reference in New Issue
Block a user