예제 #1
0
파일: views.py 프로젝트: johan-smc/bellum
 def get_groups_owner(self, request):
     token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
     user_id = user_service.get_pk(token)
     user_groups = group_service.get_groups_owner(user_id)
     group_serializer = My_GroupSerializer(user_groups, many=True)
     print(group_serializer.data)
     return Response(group_serializer.data, status=status.HTTP_200_OK)
예제 #2
0
파일: views.py 프로젝트: johan-smc/bellum
 def get_inodes(self, request):
     token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
     user_id = user_service.get_pk(token)
     resp = file_service.get_all_inodes(request.data['father'], user_id)
     print(resp)
     folder_serializer = Folder_Serializer(resp, many=True)
     return Response(folder_serializer.data, status=status.HTTP_200_OK)
예제 #3
0
파일: views.py 프로젝트: johan-smc/bellum
    def update(self, request):
        token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
        user_id = user_service.get_pk(token)
        instance = My_User.objects.get(id=user_id)

        user_Serializer = My_UserSerializer(instance, data=request.data)
        res = user_Serializer.update(instance, request.data)
        return Response("Changed", status=status.HTTP_202_ACCEPTED)
예제 #4
0
파일: views.py 프로젝트: johan-smc/bellum
 def get_file(self, request):
     id_file = request.data['id_file']
     token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
     user_id = user_service.get_pk(token)
     data = file_service.get_inode(id_file)
     os_service.decrypt_file(data.file.path + ".enc", data.password)
     print(data.file.path)
     response = open(data.file.path)
     mimetype = mimetypes.guess_type(data.file.path)  # Return an array
     os.remove(data.file.path)
     return HttpResponse(response, content_type=mimetype[0])
예제 #5
0
파일: views.py 프로젝트: johan-smc/bellum
    def create(self, request, *args, **kwargs):
        request.POST._mutable = True
        token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]

        request.data['owner'] = user_service.get_pk(token)
        groups_serializer = My_GroupSerializer(data=request.data)

        if groups_serializer.is_valid():
            groups_serializer.create(request.data)
            return Response(groups_serializer.data,
                            status=status.HTTP_201_CREATED)
        return Response(groups_serializer.errors,
                        status=status.HTTP_400_BAD_REQUEST)
예제 #6
0
파일: views.py 프로젝트: johan-smc/bellum
    def create_folder(self, request):
        request.POST._mutable = True
        token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]

        request.data['owner'] = user_service.get_pk(token)
        folder_serializer = Folder_Serializer(data=request.data)
        if folder_serializer.is_valid():
            folder_serializer.save()
            # file_serializer.create(request.data)
            return Response(folder_serializer.data,
                            status=status.HTTP_201_CREATED)

        return Response(folder_serializer.errors,
                        status=status.HTTP_400_BAD_REQUEST)
예제 #7
0
파일: views.py 프로젝트: johan-smc/bellum
    def delete(self, request):
        request.POST._mutable = True
        token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
        #######
        user_id = request.data['owner'] = user_service.get_pk(token)
        file_id = request.data['file_id']
        if file_service.get_permissions(user_id, file_id) < 2:
            return Response("Insufficient permissions",
                            status=status.HTTP_400_BAD_REQUEST)
        #######

        if file_service.delete(file_id, user_id):
            return Response("Deleted ok", status=status.HTTP_200_OK)
        return Response("Not deleted", status=status.HTTP_400_BAD_REQUEST)
예제 #8
0
파일: views.py 프로젝트: johan-smc/bellum
    def relation_user(self, request):
        user_file_serializer = UserFileSerializer(data=request.data)
        #######
        token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
        user_id = user_service.get_pk(token)
        file_id = request.data['inode']
        if file_service.get_permissions(user_id, file_id) < 2:
            return Response("Insufficient permissions",
                            status=status.HTTP_400_BAD_REQUEST)
        #######

        if user_file_serializer.is_valid():
            user_file_serializer.create(request.data)
            return Response(user_file_serializer.data,
                            status=status.HTTP_201_CREATED)
        return Response(user_file_serializer.errors,
                        status=status.HTTP_400_BAD_REQUEST)
예제 #9
0
파일: views.py 프로젝트: johan-smc/bellum
    def update_file(self, request):
        token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
        request.data['owner'] = user_service.get_pk(token)

        #####
        user_id = request.data['owner']
        file_id = request.data['id']
        if file_service.get_permissions(user_id, file_id) < 2:
            return Response("Insufficient permissions",
                            status=status.HTTP_400_BAD_REQUEST)
        ###

        instance = INode.objects.get(id=request.data['id'])
        file_serializer = File_Serializer(instance, data=request.data)
        if file_serializer.is_valid():
            file_serializer.save()
            # file_serializer.create(request.data)
            return Response(file_serializer.data, status=status.HTTP_200_OK)

        return Response(file_serializer.errors,
                        status=status.HTTP_400_BAD_REQUEST)
예제 #10
0
파일: views.py 프로젝트: johan-smc/bellum
    def post(self, request):
        serializer = self.serializer_class(data=request.data)

        if serializer.is_valid():

            token, created = Token.objects.get_or_create(
                user=serializer.validated_data['user'])

            if not created:
                token.created = datetime.datetime.utcnow()
                token.save()
            user = user_service.get_pk(token.key)
            user = user_service.get_myuser(user)
            date = user.password_change
            date = date.strftime('%Y-%m-%d')
            response_data = {'token': token.key, 'date': date}
            response_data['success'] = True

            return Response(response_data, status=status.HTTP_200_OK)
        errors = serializer.errors
        errors['success'] = False
        return Response(errors, status=status.HTTP_200_OK)
예제 #11
0
파일: views.py 프로젝트: johan-smc/bellum
 def get_usrid(self, request):
     token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
     user_id = user_service.get_pk(token)
     return Response(user_id, status=status.HTTP_200_OK)
예제 #12
0
파일: views.py 프로젝트: johan-smc/bellum
 def get(self, request):
     token = request.META['HTTP_AUTHORIZATION'].split(' ')[1]
     user_id = user_service.get_pk(token)
     user_serializer = My_UserSerializer(user_service.get_myuser(user_id))
     return Response(user_serializer.data, status=status.HTTP_200_OK)