|
|
|
|
@ -106,20 +106,29 @@ class CourseViewSet(ExtendedModelViewSet): |
|
|
|
|
serializer_class = self.get_serializer_class() |
|
|
|
|
serializer = serializer_class(data=request.data) |
|
|
|
|
if serializer.is_valid(): |
|
|
|
|
category_id = serializer.validated_data['category'] |
|
|
|
|
courses_ids = serializer.validated_data['courses'] |
|
|
|
|
old_category_id = serializer.validated_data['old_category'] |
|
|
|
|
new_category_id = serializer.validated_data['new_category'] |
|
|
|
|
try: |
|
|
|
|
category = Category.objects.get(id=category_id) |
|
|
|
|
old_category = Category.objects.get(id=old_category_id) |
|
|
|
|
except Category.DoesNotExist: |
|
|
|
|
return Response( |
|
|
|
|
{'success': False, 'detail': f'Category with id {category_id} not found'}, |
|
|
|
|
{'success': False, 'detail': f'Category with id {old_category_id} not found'}, |
|
|
|
|
status=status.HTTP_400_BAD_REQUEST, |
|
|
|
|
) |
|
|
|
|
else: |
|
|
|
|
c = Course.objects.filter( |
|
|
|
|
id__in=courses_ids, |
|
|
|
|
).update(category=category) |
|
|
|
|
return Response({'success': True}) |
|
|
|
|
try: |
|
|
|
|
new_category = Category.objects.get(id=new_category_id) |
|
|
|
|
except Category.DoesNotExist: |
|
|
|
|
return Response( |
|
|
|
|
{'success': False, 'detail': f'Category with id {new_category_id} not found'}, |
|
|
|
|
status=status.HTTP_400_BAD_REQUEST, |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
c = Course.objects.filter( |
|
|
|
|
category=old_category, |
|
|
|
|
).update( |
|
|
|
|
category=new_category |
|
|
|
|
) |
|
|
|
|
return Response({'success': True}) |
|
|
|
|
else: |
|
|
|
|
return Response( |
|
|
|
|
{'success': False}, |
|
|
|
|
|