예제 #1
0
    def patch(self, request, provider_id=None, identity_id=None):
        """
        Authentication Required, Update the users profile.
        Returns: 203 - Success, no body.
        400 - Bad key/value on update, errors in body.
        """
        user = request.user
        profile = user.get_profile()
        mutable_data = request.DATA.copy()

        if mutable_data.has_key('selected_identity'):
            user_data = {
                'selected_identity': mutable_data.pop('selected_identity')
            }
            serializer = AtmoUserSerializer(user, data=user_data, partial=True)
            if serializer.is_valid():
                serializer.save()
        serializer = ProfileSerializer(profile,
                                       data=mutable_data,
                                       partial=True)
        if serializer.is_valid():
            serializer.save()
            response = Response(serializer.data)
            return response
        else:
            return Response(serializer.errors)
예제 #2
0
    def patch(self, request, provider_id=None, identity_id=None):
        """
        Update a users profile
        If VALID save the profile
        else raise ValidationError
        """
        user = request.user
        profile = user.get_profile()
        mutable_data = request.DATA.copy()

        if mutable_data.has_key('selected_identity'):
            user_data = {
                'selected_identity': mutable_data.pop('selected_identity')
            }
            serializer = AtmoUserSerializer(user, data=user_data, partial=True)
            if serializer.is_valid():
                serializer.save()
        serializer = ProfileSerializer(profile,
                                       data=mutable_data,
                                       partial=True)
        if serializer.is_valid():
            serializer.save()
            response = Response(serializer.data)
            return response
        else:
            return Response(serializer.errors)
예제 #3
0
 def patch(self, request, provider_uuid=None, identity_uuid=None):
     """
     Authentication Required, Update the users profile.
     Returns: 203 - Success, no body.
     400 - Bad key/value on update, errors in body.
     """
     user = request.user
     profile = user.userprofile
     mutable_data = request.DATA.copy()
     if "selected_identity" in mutable_data:
         user_data = {"selected_identity":
                      mutable_data.pop("selected_identity")}
         serializer = AtmoUserSerializer(user,
                                         data=user_data,
                                         partial=True)
         if serializer.is_valid():
             serializer.save()
     serializer = ProfileSerializer(profile,
                                    data=mutable_data,
                                    partial=True)
     if serializer.is_valid():
         serializer.save()
         response = Response(serializer.data)
         return response
     else:
         return Response(serializer.errors)
예제 #4
0
    def patch(self, request, provider_id=None, identity_id=None):
        """
        Update a users profile
        If VALID save the profile
        else raise ValidationError
        """
        user = request.user
        profile = user.get_profile()
        mutable_data = request.DATA.copy()

        if mutable_data.has_key("selected_identity"):
            user_data = {"selected_identity": mutable_data.pop("selected_identity")}
            serializer = AtmoUserSerializer(user, data=user_data, partial=True)
            if serializer.is_valid():
                serializer.save()
        serializer = ProfileSerializer(profile, data=mutable_data, partial=True)
        if serializer.is_valid():
            serializer.save()
            response = Response(serializer.data)
            return response
        else:
            return Response(serializer.errors)