def post(self, request, book): flags = json.loads(request.body)['flags'] flags = flags & DatabaseBookPermissionFlag.ALLOWED_OTHER_PERMISSIONS book = DatabaseBook(book) permissions = book.get_permissions().permissions permissions.default.flags = flags book.get_permissions().write() return Response(permissions.default.to_json())
def put(self, request, book, username): flags = json.loads(request.body).get('flags', DatabaseBookPermissionFlag.NONE) book = DatabaseBook(book) permissions = book.get_permissions().get_or_add_user_permissions( username, BookPermissionFlags(flags)) return Response(permissions.to_json(), status.HTTP_201_CREATED)
def get(self, request, book): book = DatabaseBook(book) return Response(book.get_permissions().permissions.to_json())