Add local login flag
This commit is contained in:
parent
29258c4348
commit
32182fab27
|
|
@ -110,7 +110,9 @@ AUTH_USER_MODEL = "core.User"
|
|||
# https://docs.djangoproject.com/en/dev/ref/settings/#login-redirect-url
|
||||
# LOGIN_REDIRECT_URL = "users:redirect"
|
||||
# https://docs.djangoproject.com/en/dev/ref/settings/#login-url
|
||||
LOGIN_URL = "/login/"
|
||||
LOGIN_URL = "/sso/login/"
|
||||
|
||||
ALLOW_LOCAL_LOGIN = env.bool("VBV_ALLOW_LOCAL_LOGIN", default=False)
|
||||
|
||||
# PASSWORDS
|
||||
# ------------------------------------------------------------------------------
|
||||
|
|
|
|||
|
|
@ -33,7 +33,6 @@ urlpatterns = [
|
|||
path("", django_view_authentication_exempt(TemplateView.as_view(template_name="pages/home.html")), name="home"),
|
||||
path('admin/raise_error/', user_passes_test(lambda u: u.is_superuser, login_url='/login/')(raise_example_error), ),
|
||||
path(settings.ADMIN_URL, admin.site.urls),
|
||||
path("login/", django_view_authentication_exempt(auth_views.LoginView.as_view(template_name="core/login.html"))),
|
||||
path("checkratelimit/", check_rate_limit),
|
||||
path("todo/", include("vbv_lernwelt.simpletodo.urls")),
|
||||
path("sso/", include("vbv_lernwelt.sso.urls")),
|
||||
|
|
@ -42,6 +41,11 @@ if settings.DEBUG:
|
|||
# Static file serving when using Gunicorn + Uvicorn for local web socket development
|
||||
urlpatterns += staticfiles_urlpatterns()
|
||||
|
||||
if settings.ALLOW_LOCAL_LOGIN:
|
||||
urlpatterns += [path("login/", django_view_authentication_exempt(
|
||||
auth_views.LoginView.as_view(template_name="core/login.html"))),]
|
||||
|
||||
|
||||
# API URLS
|
||||
urlpatterns += [
|
||||
# API base url
|
||||
|
|
|
|||
|
|
@ -1,6 +1,4 @@
|
|||
from django.urls import path
|
||||
from django.conf.urls import url, include
|
||||
from rest_framework.routers import DefaultRouter
|
||||
|
||||
from . import views
|
||||
from ..core.middleware.auth import django_view_authentication_exempt
|
||||
|
|
|
|||
|
|
@ -28,13 +28,13 @@ def authorize(request):
|
|||
logger.warning(f'OAuth error: {e}')
|
||||
if not settings.DEBUG:
|
||||
capture_exception(e)
|
||||
return redirect(f'/{OAUTH_REDIRECT}?state=someerror')
|
||||
return redirect(f'/{OAUTH_REDIRECT}?state=someerror') # to be defined
|
||||
|
||||
user_data = _user_data_from_token_data(deocded_token)
|
||||
created = get_user_model().objects.create_or_update_by_email(user_data["email"], user_data["first_name"],
|
||||
user_data["last_name"], user_data["username"])
|
||||
|
||||
return redirect(f'/{OAUTH_REDIRECT}?state=success')
|
||||
return redirect(f'/{OAUTH_REDIRECT}?state=success') # to be defined
|
||||
|
||||
|
||||
def _user_data_from_token_data(token: dict) -> dict:
|
||||
|
|
|
|||
Loading…
Reference in New Issue