1234567891011121314151617181920212223 |
- from rest_framework import viewsets
- from rest_framework.response import Response
- from django.core.exceptions import PermissionDenied
- from django.utils.translation import ugettext as _
- from misago.acl import add_acl
- from misago.threads.serializers import AttachmentSerializer, NewAttachmentSerializer
- IMAGE_EXTENSIONS = ('jpg', 'jpeg', 'png', 'gif')
- class AttachmentViewSet(viewsets.ViewSet):
- def create(self, request):
- if not request.user.acl_cache['max_attachment_size']:
- raise PermissionDenied(_("You don't have permission to upload new files."))
- serializer = NewAttachmentSerializer(data=request.data, context={'request': request})
- serializer.is_valid(raise_exception=True)
- attachment = serializer.save()
- add_acl(request.user, attachment)
- return Response(AttachmentSerializer(attachment, context={'user': request.user}).data)
|