def update_votes(self, username, vote=[1, -1]): ANSWERS_COLLECTION.find_one_and_update({'_id': ObjectId(self.ansID)}, {'$inc': { 'votes': vote }}) usr = User(username) usr.update_karma(vote)
def addFlaggedBy(self, userID, postedBy): ans_obj = ANSWERS_COLLECTION.find_one({'_id': ObjectId(self.ansID)}) flags = ans_obj['flaggedBy'] votes = ans_obj['votes'] if userID in flags: return "alreadyFlagged" ANSWERS_COLLECTION.find_one_and_update({'_id': ObjectId(self.ansID)}, {'$addToSet': {'flaggedBy': userID}}) if (len(flags)>=10): flag = "True" self.setFlag(userID, votes, flag) usr = User(postedBy) usr.update_karma(-votes) return "quesRemoved" return "flagged"
def updateVotes(quesID): rd = (request.data).decode('utf-8') data = json.loads(rd) voteType = data['voteType'] print(voteType) usr = User(current_user.get_id()) status = usr.voteQues(quesID, voteType) print(status) ques_obj = QuestionMethods(quesID) votesCount = ques_obj.updateVotes(status['votesChange']) postedBy = (ques_obj.getQuestion())['postedBy'] usr = User(postedBy) usr.update_karma(status['votesChange']) print(status['type'], votesCount) return json.dumps({'type': status['type'], 'count': votesCount})
def updateAnsVotes(ansID): rd = (request.data).decode('utf-8') data = json.loads(rd) voteType = data['voteType'] print(voteType) ans_obj = UpdateAnswers(ansID) postedBy = (ans_obj.getAnswer())['postedBy'] if current_user.get_id() == postedBy: return json.dumps({'type': 'notAllowed'}) usr = User(current_user.get_id()) status = usr.voteAns(ansID, voteType) print(status) votesCount = ans_obj.updateVotes(postedBy, status['votesChange']) usr = User(postedBy) usr.update_karma(status['votesChange']) print(status['type'], votesCount) return json.dumps({'type': status['type'], 'count': votesCount})