From 55334cf187963e6e5eff59c7420f21bf3cfbf699 Mon Sep 17 00:00:00 2001 From: Benjamin Ledel <benjamin.ledel@digitallearning.gmbh> Date: Thu, 14 Mar 2024 10:45:09 +0100 Subject: [PATCH] Update file views.py --- src/consents/views.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/consents/views.py b/src/consents/views.py index 966616e..ec6a703 100644 --- a/src/consents/views.py +++ b/src/consents/views.py @@ -350,7 +350,7 @@ class CreateUserConsentView(APIView): status=status.HTTP_401_UNAUTHORIZED, ) - serializer = CreateUserSerializer(data=request.data, many=True) + serializer = CreateUserSerializer(data=request.data) serializer.is_valid(raise_exception=True) email = serializer.validated_data["email"] @@ -382,15 +382,17 @@ class CreateUserConsentViaConnectServiceView(APIView): status=status.HTTP_401_UNAUTHORIZED, ) - serializer = CreateUserShibbolethSerializer(data=request.data, many=True) + serializer = CreateUserShibbolethSerializer(data=request.data) serializer.is_valid(raise_exception=True) email = serializer.validated_data["email"] shib_id = shib_connector_resolver_to_pairwaise_id(email=email, provider=provider) - if CustomUser.objects.filter(uid=shib_id).first() is None: + user = CustomUser.objects.filter(shibboleth_connector_identifier=shib_id).first() + + if not user: user = CustomUser.objects.create( - uid=shib_id, # this is the pairwaise id + shibboleth_connector_identifier=shib_id, # this is the pairwaise id email=''.join(random.choices(string.ascii_uppercase + string.digits, k=8)) + "@manual-created.polaris", first_name=''.join(random.choices(string.ascii_uppercase + string.digits, k=8)), last_name=''.join(random.choices(string.ascii_uppercase + string.digits, k=8)) -- GitLab