This repository has been archived on 2024-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
authentik/passbook/core/urls.py

54 lines
2 KiB
Python
Raw Normal View History

2018-11-11 12:41:48 +00:00
"""passbook URL Configuration"""
from logging import getLogger
2018-11-11 12:41:48 +00:00
from django.conf import settings
from django.contrib import admin
from django.urls import include, path
from django.views.generic import RedirectView
2018-12-13 17:02:08 +00:00
from passbook.core.auth import mfa
from passbook.core.views import authentication, overview, user
from passbook.lib.utils.reflection import get_apps
2018-11-11 12:41:48 +00:00
LOGGER = getLogger(__name__)
2018-11-11 12:41:48 +00:00
admin.autodiscover()
2018-11-16 08:10:35 +00:00
admin.site.login = RedirectView.as_view(pattern_name='passbook_core:auth-login')
2018-11-11 12:41:48 +00:00
2018-11-16 08:10:35 +00:00
core_urls = [
# Authentication views
2018-11-11 12:41:48 +00:00
path('auth/login/', authentication.LoginView.as_view(), name='auth-login'),
2018-11-23 08:44:30 +00:00
path('auth/logout/', authentication.LogoutView.as_view(), name='auth-logout'),
2018-12-10 12:51:16 +00:00
path('auth/sign_up/', authentication.SignUpView.as_view(), name='auth-sign-up'),
2018-12-13 17:02:08 +00:00
path('auth/mfa/', mfa.MultiFactorAuthenticator.as_view(), name='mfa'),
path('auth/mfa/denied/', mfa.MFAPermissionDeniedView.as_view(), name='mfa-denied'),
# User views
path('user/', user.UserSettingsView.as_view(), name='user-settings'),
path('user/delete/', user.UserDeleteView.as_view(), name='user-delete'),
# Overview
2018-11-11 12:41:48 +00:00
path('', overview.OverviewView.as_view(), name='overview'),
2018-11-16 08:10:35 +00:00
]
urlpatterns = [
# Core (include our own URLs so namespaces are used everywhere)
2018-11-16 08:10:35 +00:00
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.label),
namespace=_passbook_app.label))
urlpatterns.append(_path)
LOGGER.debug("Loaded %s's URLs", _passbook_app.name)
urlpatterns += [
2018-11-11 12:41:48 +00:00
# Administration
path('administration/django/', admin.site.urls),
]
if settings.DEBUG:
import debug_toolbar
urlpatterns = [
path('__debug__/', include(debug_toolbar.urls)),
] + urlpatterns