def get_total_dislikes_per_day(self): dao = ReactionsDAO() dislikes = dao.get_dislikes_per_day() result_list = [] for row in dislikes: result = self.build_total_dict(row) result_list.append(result) return jsonify(result_list)
def getUsersWhoDislikesByMessageId(self, messageId): dao = ReactionsDAO() reaction_list = dao.getUsersWhoDislikesByMessageId(messageId) results = [] for row in reaction_list: result = self.buildUserReactionDictionary(row) results.append(result) return jsonify(results), 200
def get_users_that_disliked(self, mid): dao = ReactionsDAO() users = dao.get_users_that_disliked_message(mid) result = [] for user in users: dict = self.build_user_dict(user) result.append(dict) return jsonify(result)
def get_user_reaction(self, mid, uid): dao = ReactionsDAO() row = dao.get_user_reaction(mid, uid) if not row: return jsonify(False) else: reaction = self.build_reaction_dict(row) return jsonify(reaction)
def getAllReactions(self): dao = ReactionsDAO() reaction_list = dao.getAllReactions() results = [] for row in reaction_list: element = self.buildReactionDictionary(row) results.append(element) return jsonify(results), 200
def getReactionById(self, rid): dao = ReactionsDAO() reaction = dao.get_reaction_by_id(rid) if not reaction: return jsonify(Error="Reaction not found"), 404 else: result = self.build_reaction_dict(reaction) return jsonify(Reaction=reaction)
def getReactions(self): dao = ReactionsDAO() reactions = dao.get_all_reactions() result = [] for row in reactions: dict = self.build_reaction_dict(row) result.append(dict) return jsonify(Reactions=result)
def get_number_of_dislikes(self, mid): dao = ReactionsDAO() message_dao = MessagesDAO() message = message_dao.get_message(mid) if not message: return jsonify(Error="Message does not exist"), 404 else: message_dislikes = dao.get_number_of_dislikes_by_mid(mid) return jsonify(message_dislikes)
def getAllReactionsForMessages(self): dao = ReactionsDAO() reaction_list = dao.reactionsPerMessage() # results = self.buildReactionDictionary(reaction_list) # return jsonify(results), 200 results = [] for row in reaction_list: element = self.buildReactionDictionary(row) results.append(element) return jsonify(results), 200
def insert_reaction(self, form, uid, mid): if len(form) != 2: return jsonify(Error="Number of attributes different from 2"), 400 else: rlike = form['rlike'] rdislike = form['rdislike'] if rlike and rdislike: dao = ReactionsDAO() row = dao.insert_reaction(rlike, rdislike, mid, uid) rid = row[0] rdate = row[1] result = self.build_reaction_dict_attr(rid, rlike, rdislike, mid, uid, rdate) return jsonify(result) else: return jsonify(Error="Malformed post request"), 404
def updateReactionById(self, rid, form): if len(form) != 2: return jsonify(Error="Number of attributes different from 2"), 400 else: rlike = form['rlike'] rdislike = form['rdislike'] if rlike and rdislike: dao = ReactionsDAO() row = dao.get_reaction_by_id(rid) if not row: return jsonify(Error="Reaction not found"), 404 else: result = dao.update_reaction(rid, rlike, rdislike) return jsonify(Status=result), 201 else: return jsonify(Error="Unexpected attributes in update request"), 400
def getDislikesCountByMessageId(self, messageId): dao = ReactionsDAO() count = dao.getDislikesCountByMessageId(messageId) result = self.buildDislikesCountDictionary(count) return jsonify(result), 200
def getDislikesOfPost(self, postId): dao = ReactionsDAO() count = dao.getDislikesOfPost(postId) return jsonify(DislikesOnPost=count)
def getDislikesCountOnDate(self, date): dao = ReactionsDAO() count = dao.getDislikesCountOnDate(date) return jsonify(DislikesOnDate=count), 200
def deleteReaction(self, cid): dao = ReactionsDAO() id = dao.delete(cid) return jsonify(DeleteStatus="OK"), 200
def searchReactions(self, args): dao = ReactionsDAO() reaction_list = dao.getReactionsByArgs(args) return jsonify(reaction_list), 200
def get_total_likes(self): dao = ReactionsDAO() total_likes = dao.get_total_likes() return jsonify(Likes=total_likes)
def getReactionById(self, cid): dao = ReactionsDAO() reaction = dao.getReactionById(cid) return jsonify(reaction), 200
def insertReactionJson(self, json): dao = ReactionsDAO() newreaction = dao.insert(json) return jsonify(newreaction), 200
def updateReaction(self, cid, form): dao = ReactionsDAO() updatedreaction = dao.update(cid, form) return jsonify(updatedreaction), 200