|
|
|
|
@ -16,7 +16,8 @@ from .serializers.course import ( |
|
|
|
|
LessonSerializer, LessonCreateSerializer, |
|
|
|
|
) |
|
|
|
|
from .serializers.content import ( |
|
|
|
|
BanerSerializer, ImageSerializer, ImageCreateSerializer, |
|
|
|
|
BanerSerializer, BanerImageSerializer, |
|
|
|
|
ImageSerializer, ImageCreateSerializer, |
|
|
|
|
TextSerializer, TextCreateSerializer, |
|
|
|
|
ImageTextSerializer, ImageTextCreateSerializer, |
|
|
|
|
VideoSerializer, VideoCreateSerializer, |
|
|
|
|
@ -79,11 +80,26 @@ class AuthorBalanceViewSet(ExtendedModelViewSet): |
|
|
|
|
class BanerViewSet(ExtendedModelViewSet): |
|
|
|
|
queryset = Baner.objects.all() |
|
|
|
|
serializer_class = BanerSerializer |
|
|
|
|
serializer_class_map = { |
|
|
|
|
'upload_image': BanerImageSerializer, |
|
|
|
|
} |
|
|
|
|
permission_classes = (IsAdmin,) |
|
|
|
|
filter_fields = ('use',) |
|
|
|
|
ordering_fields = ('created_at', 'update_at',) |
|
|
|
|
search_fields = ('text',) |
|
|
|
|
|
|
|
|
|
@detail_route(methods=['post'], url_path='upload-image') |
|
|
|
|
def upload_image(self, request, pk=None): |
|
|
|
|
config = self.get_object() |
|
|
|
|
serializer = self.get_serializer() |
|
|
|
|
serialized_data = serializer(data=request.data) |
|
|
|
|
if serialized_data.is_valid(): |
|
|
|
|
config.image = serialized_data['image'] |
|
|
|
|
config.save() |
|
|
|
|
return Response({'success': True}) |
|
|
|
|
else: |
|
|
|
|
return Response({'success': False}, status=status.HTTP_400_BAD_REQUEST) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class ImageObjectViewSet(ExtendedModelViewSet): |
|
|
|
|
queryset = ImageObject.objects.all() |
|
|
|
|
|