def post(self): if not self.requireParameters(POST_MSG_ID, POST_MSG_PEER): return messagePointerId = long(self.request.POST[POST_MSG_ID]) other_end = self.user_model.get_by_auth_id(self.request.POST[POST_MSG_PEER]) if not other_end: self.response.write(RESPONSE_MSG_NO_PEER) return pointer = MessagePointer.get_by_id(messagePointerId, parent=MessagePointer.messagePointerKey(self.user, other_end)) if not pointer: self.response.write(RESPONSE_MSG_INVALID) return message = MessageModel.get_by_id(pointer.message_id, parent=MessageModel.messageKey(pointer.sender)) if pointer.sender == other_end.getId(): message.pointerReceiver = False else: message.pointerSender = False message.put() if not (message.pointerSender or message.pointerReceiver): message.key.delete() pointer.key.delete() self.response.write(RESPONSE_OK)