|
|
|
|
@ -11,9 +11,10 @@ from .serializers.course import ( |
|
|
|
|
CategorySerializer, LikeSerializer, |
|
|
|
|
CourseSerializer, CourseCreateSerializer, |
|
|
|
|
CourseBulkChangeCategorySerializer, |
|
|
|
|
CommentSerializer, |
|
|
|
|
CommentSerializer, CommentCreateSerializer, |
|
|
|
|
MaterialSerializer, MaterialCreateSerializer, |
|
|
|
|
LessonSerializer, LessonCreateSerializer, |
|
|
|
|
CourseCommentSerializer, LessonCommentSerializer, |
|
|
|
|
) |
|
|
|
|
from .serializers.content import ( |
|
|
|
|
BanerSerializer, |
|
|
|
|
@ -395,7 +396,7 @@ class ConfigViewSet(generics.RetrieveUpdateAPIView): |
|
|
|
|
|
|
|
|
|
class CommentViewSet(ExtendedModelViewSet): |
|
|
|
|
queryset = Comment.objects.filter(level=0) |
|
|
|
|
serializer_class = CommentSerializer |
|
|
|
|
serializer_class = CommentCreateSerializer |
|
|
|
|
permission_classes = (IsAdmin,) |
|
|
|
|
|
|
|
|
|
def get_queryset(self): |
|
|
|
|
@ -411,6 +412,38 @@ class CommentViewSet(ExtendedModelViewSet): |
|
|
|
|
return queryset |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ObjectCommentsViewSet(viewsets.ReadOnlyModelViewSet): |
|
|
|
|
queryset = Comment.objects.filter(level=0) |
|
|
|
|
OBJ_TYPE_COURSE = 'course' |
|
|
|
|
OBJ_TYPE_LESSON = 'lesson' |
|
|
|
|
permission_classes = (IsAdmin,) |
|
|
|
|
|
|
|
|
|
def get_queryset(self): |
|
|
|
|
queryset = self.queryset |
|
|
|
|
obj_type = self.request.query_params.get('obj_type') |
|
|
|
|
obj_id = self.request.query_params.get('obj_id') |
|
|
|
|
is_deactivated = self.request.query_params.get('is_deactivated', '0') |
|
|
|
|
if obj_type == self.OBJ_TYPE_COURSE: |
|
|
|
|
queryset = CourseComment.objects.filter(course=obj_id) |
|
|
|
|
elif obj_type == self.OBJ_TYPE_LESSON: |
|
|
|
|
queryset = LessonComment.objects.filter(lesson=obj_id) |
|
|
|
|
if is_deactivated == '0': |
|
|
|
|
queryset = queryset |
|
|
|
|
elif is_deactivated == '1': |
|
|
|
|
queryset = queryset.filter(deactivated_at__isnull=True) |
|
|
|
|
elif is_deactivated == '2': |
|
|
|
|
queryset = queryset.filter(deactivated_at__isnull=False) |
|
|
|
|
return queryset |
|
|
|
|
|
|
|
|
|
def get_serializer_class(self): |
|
|
|
|
obj_type = self.request.query_params.get('obj_type') |
|
|
|
|
if obj_type == self.OBJ_TYPE_COURSE: |
|
|
|
|
serializer_class = CourseCommentSerializer |
|
|
|
|
elif obj_type == self.OBJ_TYPE_LESSON: |
|
|
|
|
serializer_class = LessonCommentSerializer |
|
|
|
|
return serializer_class |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class AuthorRequestViewSet(ExtendedModelViewSet): |
|
|
|
|
queryset = AuthorRequest.objects.all() |
|
|
|
|
serializer_class = AuthorRequestSerializer |
|
|
|
|
|