Example #1
0
    def get(self, request, *args, **kwargs):
        """
		#Response
		```
		{
		    "data": {
		        "name": "AI",
		        "description": "Learn AI",
		        "is_active": false
		    },
		    "code": 2000,
		    "msg": "Request processed successfully"
		}
		```
		# Response(Error if wrong pk provide or unrelated course)
		```
		{
		    "code": 3016,
		    "msg": "Course Not found for this user"
		}
		"""
        course = self.get_object()
        if course:
            serializer = self.serializer_class(course)
            return Response(
                res_codes.get_response_dict(
                    res_codes.SUCCESS,
                    serializer.data,
                ),
                status=status.HTTP_200_OK,
            )
        return Response(res_codes.get_response_dict(
            res_codes.COURSE_NOT_FOUND_FOR_USER),
                        status=status.HTTP_400_BAD_REQUEST)
Example #2
0
    def post(self, request, *args, **kwargs):
        """
		# Response(Success)
		```
		{
		    "data": {
		        "course": "a26077a9-9a40-4f35-87a6-d5828c46baf6"
		    },
		    "msg": "Course added to library successfully",
		    "code": 3017
		}
		```
		# Response(Error)
		```
		{
		    "data": {
		        "course": [
		            "This field may not be null."
		        ]
		    },
		    "code": 1000,
		    "msg": "Invalid post data provided"
		}
		```
		# Response(Error)
		```
		{
		    "detail": "Given token not valid for any token type",
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_class": "AccessToken",
		            "message": "Token is invalid or expired",
		            "token_type": "access"
		        }
		    ]
		}
		```
		"""
        data = request.data.copy()
        serializer = self.serializer_class(data=data)
        if serializer.is_valid():
            course = serializer.save(user=request.user)
            return Response(
                res_codes.get_response_dict(
                    res_codes.USER_ADDED_COURSE,
                    serializer.data,
                ),
                status=status.HTTP_201_CREATED,
            )
        return Response(
            res_codes.get_response_dict(
                res_codes.INVALID_POST_DATA,
                serializer.errors,
            ))
Example #3
0
    def put(self, request, *args, **kwargs):
        """
		# Response (Success)
		'''
		{
		    "code": 1005,
		    "msg": "Password updated successfully."
		}
		'''
		# Response(Error)
		'''
		{
		    "msg": "Invalid post data provided",
		    "code": 1000,
		    "data": {
		        "password": {
		            "msg": "Wrong password supplied.",
		            "code": "1004"
		        }
		    }
		}
		'''
		# Response(Error)
		'''
		{
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_type": "access",
		            "message": "Token is invalid or expired",
		            "token_class": "AccessToken"
		        }
		    ],
		    "detail": "Given token not valid for any token type"
		}
		'''
		"""
        data = request.data.copy()
        serializer = self.serializer_class(request.user, data=data)
        if serializer.is_valid():
            serializer.save()
            return Response(
                res_codes.get_response_dict(
                    res_codes.PASSWORD_UPDATE_SUCCESS, ),
                status=status.HTTP_200_OK,
            )
        return Response(res_codes.get_response_dict(
            res_codes.INVALID_POST_DATA, serializer.errors),
                        status=status.HTTP_400_BAD_REQUEST)
Example #4
0
    def get(self, request, *args, **kwargs):
        """
		#Response
		{
		    "data": [
		        {
		            "id": "80d55bf3-af57-41b5-aa85-ba0aee152878",
		            "first_name": "test user",
		            "last_name": "last",
		            "email": "*****@*****.**"
		        }
		    ],
		    "code": 2000,
		    "msg": "Request processed successfully"
		}
		"""
        users = User.objects.filter(is_staff=False)
        serializer = self.serializer_class(users, many=True)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #5
0
    def validate(self, attrs):
        data = super().validate(attrs)
        if self.user.profile.role != 3:
            raise serializers.ValidationError(
                res_codes.get_response_dict(res_codes.NO_ACCESS))

        return data
Example #6
0
    def get(self, request, *args, **kwargs):
        """
		#Response
		```
		{
    		"data": [
		        {
		            "comment": "AI Solution"
		        },
		        {
		            "comment": "AI Solution"
		        }
		    ],
		    "msg": "Request processed successfully",
		    "code": 2000
		}
		```
		# Response(Error)
		```
		{
		    "code": 4000,
		    "msg": "Such pk not found"
		}
		"""
        assignment_solution = self.get_object()
        serializer = self.serializer_class(assignment_solution, many=True)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #7
0
    def get(self, request, format=None):
        """
		#Response
		```
		{
			"code": 2000,
		    "msg": "Request processed successfully",
		    "data": [
		        {
					"id": "63ce453a-2327-40ab-9a50-b5db46e88234",
		            "name": "NN",
		            "description": "Learn NN"
		        },
		        {
					"id": "63ce453a-2327-40ab-9a50-b5db46e88234",
		            "name": "AI",
		            "description": "Learn AI"
		        }
		    ]
		}
		```
		"""

        courses = Course.objects.filter(is_active=True, is_deleted=False)
        serializer = self.serializer_class(courses, many=True)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #8
0
    def get(self, request, *args, **kwargs):
        """
		# Response(Success)
		``` 
		{
		    "code": 2000,
		    "msg": "Request processed successfully",
		    "data": [
		        {
		            "id": "902f4bda-4cbe-4a71-bec3-c767f02b8ae6",
		            "name": "test cat",
		            "description": "test",
		            "courses": [
		                {
		                    "id": "a745601c-4b17-4608-973f-1043bb5774d9",
		                    "course": {
		                        "id": "9a7657b2-55c7-4e45-859f-dbc9e4738061",
		                        "name": "AI 22",
		                        "description": "Learn AI"
		                    }
		                },
		                {
		                    "id": "42483d01-dc6b-4cce-992d-6bb214f8bed0",
		                    "course": {
		                        "id": "e0344bb0-b6d3-4ce3-a0ed-2873179f4e15",
		                        "name": "AI 22",
		                        "description": "Learn AI"
		                    }
		                }
		            ]
		        },
		        {
		            "id": "6829f57f-084f-4930-97e7-117899b9e55d",
		            "name": "teyst",
		            "description": "desc",
		            "courses": [
		                {
		                    "id": "ed35ba0d-51a1-4336-a0d9-5f904a940f61",
		                    "course": {
		                        "id": "a391fce2-bb39-47bf-abe1-6209cfcc06a4",
		                        "name": "AI 22",
		                        "description": "Learn AI"
		                    }
		                }
		            ]
		        }
		    ]
		}
		```
		"""
        categories = Category.objects.all()
        serializer = self.serializer_class(categories, many=True)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #9
0
    def get(self, request, *args, **kwargs):
        """
		# Response(Success)
		``` 
		{
		    "msg": "Request processed successfully",
		    "code": 2000,
		    "data": [
		        {
		            "id": "902f4bda-4cbe-4a71-bec3-c767f02b8ae6",
		            "name": "test cat",
		            "description": "test",
		            "courses": [
		                {
		                    "id": "a745601c-4b17-4608-973f-1043bb5774d9",
		                    "course": {
		                        "name": "AI 22",
		                        "description": "Learn AI",
		                        "is_active": true
		                    }
		                },
		                {
		                    "id": "42483d01-dc6b-4cce-992d-6bb214f8bed0",
		                    "course": {
		                        "name": "AI 22",
		                        "description": "Learn AI",
		                        "is_active": true
		                    }
		                }
		            ]
		        },
		        {
		            "id": "6829f57f-084f-4930-97e7-117899b9e55d",
		            "name": "teyst",
		            "description": "desc",
		            "courses": [
		                {
		                    "id": "ed35ba0d-51a1-4336-a0d9-5f904a940f61",
		                    "course": {
		                        "name": "AI 22",
		                        "description": "Learn AI",
		                        "is_active": true
		                    }
		                }
		            ]
		        }
		    ]
		}
		```
		"""
        categories = Category.objects.all()
        serializer = self.serializer_class(categories, many=True)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #10
0
    def get(self, request, *args, **kwargs):
        """
		#Response
		```
		{
		    "code": 2000,
		    "msg": "Request processed successfully",
		    "data": {
		        "course": "a26077a9-9a40-4f35-87a6-d5828c46baf6",
		        "course_section": null,
		        "name": "New AI Assignment",
		        "description": "Test Assignment",
		        "index": 2,
		        "is_active": false,
		        "files": [
		            {
		                "assignment": "630158a9-0490-4bd3-b787-5b43e23a4e92",
		                "name": "AI sub assignment",
		                "file": "/media/8b30e0cc-e70e-48f8-a0ec-245c6134fb45/1b817199-71f4-45ec-a1ab-2b388bc421ce/6cd235fa-b341-4cbc-8e36-6c25805d35ba/serializers.py",
		                "description": "AI assignment",
		                "index": 5,
		                "is_active": false
		            }
		        ]
		    }
		}
		```
		# Response(Error)
		```
		{
		    "code": 4000,
		    "msg": "Such pk not found"
		}
		"""
        assignment = self.get_object()
        if assignment:
            serializer = self.serializer_class(assignment)
            return Response(
                res_codes.get_response_dict(
                    res_codes.SUCCESS,
                    serializer.data,
                ),
                status=status.HTTP_200_OK,
            )
        return Response(res_codes.get_response_dict(res_codes.PK_NOT_FOUND),
                        status=status.HTTP_400_BAD_REQUEST)
Example #11
0
 def get_object(self):
     try:
         course = Course.objects.get(
             id=self.kwargs.get('pk'),
             is_active=True,
             is_deleted=False,
         )
     except Course.DoesNotExist:
         raise NotFound(res_codes.get_response_dict(res_codes.NOT_FOUND))
     return course
Example #12
0
    def delete(self, request, *args, **kwargs):
        """
		# Response(Success)
		```
		{
		    "msg": "Course removed successfully from library",
		    "code": 3018
		}
		```
		# Response(Error with wrong pk or invalid user)
		```
		{
		    "msg": "Course Not found for this user",
		    "code": 3016
		}
		```
		# Response(Error)
		```
		{
		    "detail": "Given token not valid for any token type",
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_class": "AccessToken",
		            "message": "Token is invalid or expired",
		            "token_type": "access"
		        }
		    ]
		}
		```
		"""
        my_course = self.get_object(pk, request.user)
        if my_course:
            my_course.delete()
            return Response(res_codes.get_response_dict(
                res_codes.USER_DELETED_COURSE),
                            status=status.HTTP_204_NO_CONTENT)
        return Response(res_codes.get_response_dict(
            res_codes.COURSE_NOT_FOUND_FOR_USER),
                        status=status.HTTP_400_BAD_REQUEST)
Example #13
0
    def delete(self, request, pk, format=None):
        """
		#Response(Success)
		{
		    "msg": "Assignment File deleted successfully",
		    "code": 5005
		}
		# Response(Error)
		```
		{
		    "msg": "Such pk not found",
		    "code": 4000
		}
		```
		#### Response (error):
		```
		{
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_type": "access",
		            "message": "Token is invalid or expired",
		            "token_class": "AccessToken"
		        }
		    ],
		    "detail": "Given token not valid for any token type"
		}
		```
		"""
        assignment_file = self.get_object(pk)
        if assignment_file:
            assignment_file.is_active = False
            assignment_file.is_deleted = True
            assignment_file.save()
            return Response(
                res_codes.get_response_dict(res_codes.ASSIGNMENT_FILE_DELETED),
                status=status.HTTP_204_NO_CONTENT,
            )
        return Response(res_codes.get_response_dict(res_codes.PK_NOT_FOUND),
                        status=status.HTTP_400_BAD_REQUEST)
Example #14
0
    def post(self, request, *args, **kwargs):
        serializer = self.get_serializer(data=request.data)

        try:
            serializer.is_valid(raise_exception=True)
        except TokenError as e:
            raise InvalidToken(e.args[0])

        return Response(
            res_codes.get_response_dict(
                res_codes.LOGIN_SUCCESS,
                serializer.validated_data,
            ))
Example #15
0
    def get(self, request, pk, format=None):
        """
		#Response
		```
		{
		    "msg": "Request processed successfully",
		    "code": 2000,
		    "data": {
		        "assignment": "1b817199-71f4-45ec-a1ab-2b388bc421ce",
		        "name": "AI sub assignment",
		        "file": "/media/8b30e0cc-e70e-48f8-a0ec-245c6134fb45/1b817199-71f4-45ec-a1ab-2b388bc421ce/1f118585-5cca-40fd-ac6f-b6cbab1ecd14/serializers.py",
		        "description": "AI assignment",
		        "index": 5,
		        "is_active": false
		    }
		}
		```
		# Response(Error)
		```
		{
		    "code": 4000,
		    "msg": "Such pk not found"
		}
		"""
        assignment_file = self.get_object(pk)
        if assignment_file:
            serializer = self.serializer_class(assignment_file)
            return Response(
                res_codes.get_response_dict(
                    res_codes.SUCCESS,
                    serializer.data,
                ),
                status=status.HTTP_200_OK,
            )
        return Response(res_codes.get_response_dict(res_codes.PK_NOT_FOUND),
                        status=status.HTTP_400_BAD_REQUEST)
Example #16
0
    def get(self, request, *args, **kwargs):
        """
		#Response
		```
		{
		    "msg": "Request processed successfully",
		    "data": {
		        "course": "8b30e0cc-e70e-48f8-a0ec-245c6134fb45",
		        "course_section": null,
		        "name": "AI Assignment",
		        "description": "Assignment",
		        "index": 3,
		        "is_active": false
		    },
		    "code": 2000
		}
		```
		# Response(Error)
		```
		{
		    "code": 4000,
		    "msg": "Such pk not found"
		}
		"""
        assignment = self.get_object()
        if assignment:
            serializer = self.serializer_class(assignment)
            return Response(
                res_codes.get_response_dict(
                    res_codes.SUCCESS,
                    serializer.data,
                ),
                status=status.HTTP_200_OK,
            )
        return Response(res_codes.get_response_dict(res_codes.PK_NOT_FOUND),
                        status=status.HTTP_400_BAD_REQUEST)
Example #17
0
    def get(self, request, *args, **kwargs):
        """
		# Response (Success)
		'''
		{
		    "data": {
		        "id": "51fb2581-7c14-459d-9f3b-0ed593cbeb0f",
		        "first_name": gaurav,
		        "last_name": saini,
		        "email": "*****@*****.**",
		        "profile": {
		            "country": "INDIA",
		            "date_of_birth": "1993-03-04",
		            "organization": "XYZ",
		            "mobile": "123456789",
		            "address": "YNR",
		            "city": "YNR",
		            "pincode": "123567"
		        }
		    },
		    "code": 2000,
		    "msg": "Request processed successfully"
		}
		'''
		# Response(Error)
		'''
		{
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_type": "access",
		            "message": "Token is invalid or expired",
		            "token_class": "AccessToken"
		        }
		    ],
		    "detail": "Given token not valid for any token type"
		}
		'''
		"""
        serializer = self.serializer_class(request.user)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #18
0
    def get(self, request, format=None):
        """
		{
		    "msg": "Request processed successfully",
		    "data": [
		        {
		            "name": "AI",
		            "description": "Learn AI",
		            "is_active": true
		        },
		        {
		            "name": "ML",
		            "description": "Learn ML",
		            "is_active": false
		        },
		    ],
		    "code": 2000
		}
		# Response(Error)
		```
		{
		    "detail": "Given token not valid for any token type",
		    "messages": [
		        {
		            "token_type": "access",
		            "token_class": "AccessToken",
		            "message": "Token is invalid or expired"
		        }
		    ],
		    "code": "token_not_valid"
		}
		```
		"""

        user_courses = Course.objects.filter(author=request.user)
        serializer = self.serializer_class(user_courses, many=True)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #19
0
    def get(self, request, *args, **kwargs):
        """
		# Response(Success)
		``` 
		{
		    "msg": "Request processed successfully",
		    "data": {
		        "id": "902f4bda-4cbe-4a71-bec3-c767f02b8ae6",
		        "name": "test cat",
		        "description": "test",
		        "courses": [
		            {
		                "id": "a745601c-4b17-4608-973f-1043bb5774d9",
		                "course": {
		                    "name": "AI 22",
		                    "description": "Learn AI",
		                    "is_active": true
		                }
		            },
		            {
		                "id": "42483d01-dc6b-4cce-992d-6bb214f8bed0",
		                "course": {
		                    "name": "AI 22",
		                    "description": "Learn AI",
		                    "is_active": true
		                }
		            }
		        ]
		    },
		    "code": 2000
		}
		```
		"""
        category = self.get_object()
        serializer = self.serializer_class(category)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #20
0
    def get(self, request, *args, **kwargs):
        """
		# Response(Success)
		``` 
		{
		    "code": 2000,
		    "data": {
		        "id": "902f4bda-4cbe-4a71-bec3-c767f02b8ae6",
		        "name": "test cat",
		        "description": "test",
		        "courses": [
		            {
		                "id": "a745601c-4b17-4608-973f-1043bb5774d9",
		                "course": {
		                    "id": "9a7657b2-55c7-4e45-859f-dbc9e4738061",
		                    "name": "AI 22",
		                    "description": "Learn AI"
		                }
		            },
		            {
		                "id": "42483d01-dc6b-4cce-992d-6bb214f8bed0",
		                "course": {
		                    "id": "e0344bb0-b6d3-4ce3-a0ed-2873179f4e15",
		                    "name": "AI 22",
		                    "description": "Learn AI"
		                }
		            }
		        ]
		    },
		    "msg": "Request processed successfully"
		}
		```
		"""
        category = self.get_object()
        serializer = self.serializer_class(category)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #21
0
    def get(self, request, *args, **kwargs):
        """
		#Response
		```
		{
		    "code": 2000,
		    "data": [
		        {
		            "comment": "AI Solution",
		            "files": [
		                {
		                    "assignment_solution": "62d77c7c-7db2-4432-95cc-7fbda7aaa770",
		                    "name": "AI",
		                    "comment": "This is a test comment"
		                }
		            ]
		        },
		        {
		            "comment": "AI Solution",
		            "files": []
		        }
		    ],
		    "msg": "Request processed successfully"
		}
		```
		# Response(Error)
		```
		{
		    "code": 4000,
		    "msg": "Such pk not found"
		}
		"""
        assignment_solution = self.get_object()
        serializer = self.serializer_class(assignment_solution, many=True)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #22
0
    def get(self, request, *args, **kwargs):
        """
		### Response
		```
		{
			"code": 2000,
			"msg": "Request processed successfully",
			"data": {
				"id": "63ce453a-2327-40ab-9a50-b5db46e88234",
				"name": "sdfds",
				"description": "",
				"tabs": [
					{
						"name": "certification",
						"content": "dfsdfsldkflksdf;s",
						"index": 0,
						"lists": [
							{
								"content": "slslslslslslsls",
								"index": 0
							}
						]
					}
				]
			}
		}
		```
		"""
        course = self.get_object()
        serializer = self.serializer_class(course)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #23
0
    def get(self, request, *args, **kwargs):
        """
		#Response
		```
		{
		    "data": [
		        {
		            "course": "a26077a9-9a40-4f35-87a6-d5828c46baf6",
		            "course_section": null,
		            "name": "New AI Assignment",
		            "description": "Test Assignment",
		            "index": 2,
		            "is_active": false,
		            "files": [
		                {
		                    "assignment": "630158a9-0490-4bd3-b787-5b43e23a4e92",
		                    "name": "AI sub assignment",
		                    "file": "/media/8b30e0cc-e70e-48f8-a0ec-245c6134fb45/
		                    	1b817199-71f4-45ec-a1ab-2b388bc421ce/6cd235fa-b3
		                    	41-4cbc-8e36-6c25805d35ba/serializers.py",
		                    "description": "AI assignment",
		                    "index": 5,
		                    "is_active": false
		                }
		            ]
		        },
		        {
		            "course": "8b30e0cc-e70e-48f8-a0ec-245c6134fb45",
		            "course_section": "c4cd2d9d-277e-439f-8958-1a1a6f1be62e",
		            "name": "New AI Assignment",
		            "dataescription": "Assignment For Users",
		            "index": 3,
		            "is_active": false,
		            "files": [
		                {
		                    "assignment": "1b817199-71f4-45ec-a1ab-2b388bc421ce",
		                    "name": "AI sub assignment",
		                    "file": "/media/8b30e0cc-e70e-48f8-a0ec-245c6134fb45/
		                    	1b817199-71f4-45ec-a1ab-2b388bc421ce/1f118585-5cc
		                    	a-40fd-ac6f-b6cbab1ecd14/urls.py",
		                    "description": "AI assigment",
		                    "index": 5,
		                    "is_active": false
		                }
		            ]
		        },
		        {
		            "course": "8b30e0cc-e70e-48f8-a0ec-245c6134fb45",
		            "course_section": null,
		            "name": "New Assignment",
		            "description": "Test Assignment",
		            "index": 3,
		            "is_active": false,
		            "files": []
		        },
		    ],
		    "msg": "Request processed successfully",
		    "code": 2000
		}
		```
		"""
        assignment = self.get_object()
        serializer = self.serializer_class(assignment, many=True)
        return Response(
            res_codes.get_response_dict(
                res_codes.SUCCESS,
                serializer.data,
            ),
            status=status.HTTP_200_OK,
        )
Example #24
0
    def put(self, request, pk, format=None):
        """
		### Body(With Course Section):
		```
		{
		    "assignment": "1b817199-71f4-45ec-a1ab-2b388bc421ce",
		    "file": "test.py",
		    "name": "AI sub assignment",
		    "description": "AI assignment",
		    "index": "5",
		    "is_active": false
		}
		```
		#Response(Success)
		```
		{
		    "data": {
		        "assignment": "1b817199-71f4-45ec-a1ab-2b388bc421ce",
		        "name": "AI sub assignment",
		        "file": "/media/8b30e0cc-e70e-48f8-a0ec-245c6134fb45/1b817199-71f4-45ec-a1ab-2b388bc421ce/1f118585-5cca-40fd-ac6f-b6cbab1ecd14/test.py",
		        "description": "AI assigment",
		        "index": 5,
		        "is_active": false
		    },
		    "code": 5004,
		    "msg": "Assignment File updated successfully"
		}
		```
		# Response(Error)
		```
		{
		    "msg": "Invalid post data provided",
		    "code": 1000,
		    "data": {
		        "assignment": [
		            "'1b817199-71f4-45ec-a1ab-2b38bc421ce' is not a valid UUID."
		        ]
		    }
		}
		```
		# Response(Error)
		```
		{
		    "msg": "Such pk not found",
		    "code": 4000
		}
		```
		#### Response (error):
		```
		{
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_type": "access",
		            "message": "Token is invalid or expired",
		            "token_class": "AccessToken"
		        }
		    ],
		    "detail": "Given token not valid for any token type"
		}
		```
		"""
        assignment_file = self.get_object(pk)
        if assignment_file:
            serializer = self.serializer_class(assignment_file,
                                               data=request.data)
            if serializer.is_valid():
                serializer.save()
                return Response(
                    res_codes.get_response_dict(
                        res_codes.ASSIGNMENT_FILE_UPDATED,
                        serializer.data,
                    ),
                    status=status.HTTP_200_OK,
                )
            return Response(res_codes.get_response_dict(
                res_codes.INVALID_POST_DATA, serializer.errors),
                            status=status.HTTP_400_BAD_REQUEST)
        return Response(res_codes.get_response_dict(res_codes.PK_NOT_FOUND),
                        status=status.HTTP_400_BAD_REQUEST)
Example #25
0
    def post(self, request, *args, **kwargs):
        """
		### Body:
		```
		{
			"assignment_solution": "795108ee-810b-4659-98e7-34d70e836792",
	        "name": "Neural Network",
	        "comment": "This is NN file.",
	        "file": "/media/a26077a9-9a40-4f35-87a6-d5828c46baf6/630158a9-0490-4bd3-b787-5b43e23a4e92/853efbcc-9879-4426-a9a6-d63fae7a3bfd/views.py"
		}
		```
		#### Response (success):
		```
		{
		    "msg": "Assignment Solution File Uploaded successfully",
		    "code": 5007,
		    "data": {
		        "assignment_solution": "795108ee-810b-4659-98e7-34d70e836792",
		        "name": "Neural Network",
		        "comment": "This is NN file.",
		        "file": "/media/a26077a9-9a40-4f35-87a6-d5828c46baf6/630158a9-0490-4bd3-b787-5b43e23a4e92/853efbcc-9879-4426-a9a6-d63fae7a3bfd/views.py"
		    }
		}
		```
		#### Response (error):
		```
		{
		    "code": 1000,
		    "msg": "Invalid post data provided",
		    "data": {
		        "file": [
		            "No file was submitted."
		        ],
		        "comment": [
		            "This field is required."
		        ],
		        "assignment_solution": [
		            "This field is required."
		        ],
		        "name": [
		            "This field is required."
		        ]
		    }
		}
		```
		#### Response (error):
		```
		{
		    "msg": "Invalid post data provided",
		    "code": 1000,
		    "data": {
		        "assignment_solution": [
		            "'795108ee-810b-4659-98e7-34d70ef836792' is not a valid UUID."
		        ]
		    }
		}
		```
		#### Response (error):
		```
		{
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_type": "access",
		            "message": "Token is invalid or expired",
		            "token_class": "AccessToken"
		        }
		    ],
		    "detail": "Given token not valid for any token type"
		}
		```
		"""
        data = request.data.copy()
        serializer = self.serializer_class(data=data)
        if serializer.is_valid():
            serializer.save()
            return Response(
                res_codes.get_response_dict(
                    res_codes.ASSIGNMENT_SOLUTION_FILE_UPLOADED,
                    serializer.data,
                ),
                status=status.HTTP_201_CREATED,
            )
        return Response(res_codes.get_response_dict(
            res_codes.INVALID_POST_DATA,
            serializer.errors,
        ),
                        status=status.HTTP_400_BAD_REQUEST)
Example #26
0
 def validate_password(self, data):
     if not check_password(data, self.instance.password):
         raise serializers.ValidationError(
             res_codes.get_response_dict(res_codes.WRONG_PASSWORD_ENTERED))
     return data
Example #27
0
    def post(self, request, *args, **kwargs):
        """
		### Body:
		```
		{
		    "assignment": "630158a9-0490-4bd3-b787-5b43e23a4e92",
		    "comment": "AI Solution"
		}
		```
		#### Response (success):
		```
		{
		    "data": {
		        "assignment": "630158a9-0490-4bd3-b787-5b43e23a4e92",
		        "comment": "AI Solution"
		    },
		    "msg": "Assignment Solution Created successfully",
		    "code": 5006
		}
		```
		#### Response (error):
		```
		{
		    "code": 1000,
		    "msg": "Invalid post data provided",
		    "data": {
		        "assignment": [
		            "This field may not be null."
		        ],
		        "comment": [
		            "This field may not be blank."
		        ]
		    }
		}
		```
		#### Response (error):
		```
		{
		    "data": {
		        "assignment": [
		            "'630158a9-490-4bd3-b787-5b43e23a4e92' is not a valid UUID."
		        ]
		    },
		    "msg": "Invalid post data provided",
		    "code": 1000
		}
		```
		#### Response (error):
		```
		{
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_type": "access",
		            "message": "Token is invalid or expired",
		            "token_class": "AccessToken"
		        }
		    ],
		    "detail": "Given token not valid for any token type"
		}
		```
		"""
        data = request.data.copy()
        serializer = self.serializer_class(data=data)
        if serializer.is_valid():
            serializer.save(user=request.user)
            return Response(
                res_codes.get_response_dict(
                    res_codes.ASSIGNMENT_SOLUTION_CREATED,
                    serializer.data,
                ),
                status=status.HTTP_201_CREATED,
            )
        return Response(res_codes.get_response_dict(
            res_codes.INVALID_POST_DATA,
            serializer.errors,
        ),
                        status=status.HTTP_400_BAD_REQUEST)
Example #28
0
    def post(self, request, *args, **kwargs):
        """
		### Body:
		```
		{
		    "email": "*****@*****.**",
		    "first_name": "v",
		    "last_name": "s",
		    "password": "******",
		    "profile": {
		        "country": "India",
		        "organization":"School",
		        "date_of_birth": "2019-02-19"
		    }
		}
		```

		#### Response (success):
		```
		{
		    "code": 1001,
		    "msg": "Account created successfully",
		    "data": {
		        "id": "db54e0a6-a9e3-40b6-b2d0-1a54b3583320",
		        "first_name": "v",
		        "last_name": "s",
		        "email": "*****@*****.**",
		        "profile": {
		            "country": "India",
		            "date_of_birth": "2019-02-19",
		            "organization": "School"
		        }
		    }
		}
		```

		#### Response (error):
		```
		{
		    "code": 1000,
		    "msg": "Invalid post data provided",
		    "data": {
		        "first_name": [
		            "This field may not be blank."
		        ],
		        "password": [
		            "This field may not be blank."
		        ],
		        "email": [
		            "This field may not be blank."
		        ],
		        "last_name": [
		            "This field may not be blank."
		        ],
		        "profile": {
		            "date_of_birth": [
		                "Date has wrong format. Use one of these formats instead: YYYY-MM-DD."
		            ],
		            "organization": [
		                "This field may not be blank."
		            ],
		            "country": [
		                "This field may not be blank."
		            ]
		        }
		    }
		}
		```

		#### Response (error):
		```
		{
			"code": 1000,
			"msg": "Invalid post data provided",
			"data": {
				"email": [
					"This field must be unique."
				]
			}
		}
		```
		#### Response (error):
		```
		{
		    "code": 1000,
		    "msg": "Invalid post data provided",
		    "data": {
		        "profile": {
		            "date_of_birth": [
		                "Date has wrong format. Use one of these formats instead: YYYY-MM-DD."
		            ]
		        }
		    }
		}
		```
		"""
        data = request.data.copy()
        serializer = self.serializer_class(data=data)
        if serializer.is_valid():
            user_obj = serializer.save()
            return Response(
                res_codes.get_response_dict(
                    res_codes.SIGNUP_SUCCESS,
                    serializer.data,
                ),
                status=status.HTTP_201_CREATED,
            )
        return Response(res_codes.get_response_dict(
            res_codes.INVALID_POST_DATA,
            serializer.errors,
        ),
                        status=status.HTTP_400_BAD_REQUEST)
Example #29
0
    def patch(self, request, *args, **kwargs):
        """
		#Request(Body)
		```
		{
			"first_name": "golu",
			"last_name": "saini",
			"email": "*****@*****.**",
			"profile": {
			    "country": "INDIA",
			    "date_of_birth": "1993-03-04",
			    "organization": "XYZ",
			}
		}
		```
		#Response(Success)
		```
		{
		    "code": 1006,
		    "data": {
		        "id": "51fb2581-7c14-459d-9f3b-0ed593cbeb0f",
		        "first_name": "golu",
		        "last_name": "saini",
		        "email": "*****@*****.**",
		        "profile": {
		            "country": "INDIA",
		            "date_of_birth": "1993-03-04",
		            "organization": "XYZ",
		        }
		    },
		    "msg": "User detail updated successfully."
		}
		```
		#### Response (error):
		```
		{
		    "code": "token_not_valid",
		    "messages": [
		        {
		            "token_type": "access",
		            "message": "Token is invalid or expired",
		            "token_class": "AccessToken"
		        }
		    ],
		    "detail": "Given token not valid for any token type"
		}
		```
		"""
        serializer = UserCreateSerializer(
            request.user,
            data=request.data,
            partial=True,
        )
        if serializer.is_valid():
            serializer.save()
            return Response(
                res_codes.get_response_dict(
                    res_codes.USER_PROFILE_UPDATED,
                    serializer.data,
                ),
                status=status.HTTP_200_OK,
            )
        return Response(res_codes.get_response_dict(
            res_codes.INVALID_POST_DATA, serializer.errors),
                        status=status.HTTP_400_BAD_REQUEST)
Example #30
0
 def get_object(self):
     try:
         category = Category.objects.get(id=self.kwargs.get('pk'), )
     except Category.DoesNotExist:
         raise NotFound(res_codes.get_response_dict(res_codes.NOT_FOUND))
     return category