def getMostActivityOfUsers(self): dao = statsDAO() dates = dao.getPostDatesAvailable() if not dates: return jsonify(Error="No Posts found"), 400 return jsonify( MostActivityOfUsersPerDates=dao.getMostActivityOfUsers(dates)), 200
def getTrendingHashtagsTotal(self): dao = statsDAO() dates = dao.getAvailableTrendingDates() if not dates: return jsonify(Error="No hashtags found"), 400 return jsonify( TrendingHashtags=dao.getTrendringHashtagsTotal(dates)), 200
def getStatByChoice(self, form): stat = form['stat'] dao = statsDAO() if len(form) == 2: uid = form['uid'] if stat == "postsperdaybyuser": dao2 = usersDAO() if not dao2.getUserById(uid): return jsonify(Error="User " + str(uid) + " not found"), 404 dates = dao.getDatesOfPostsPerDayByUser(uid) if not dates: return jsonify(Error="No Posts found for user: "******"Invalid statistic per user operation"), 404 if len(form) == 1: if stat == "mostactivityofusers": dates = dao.getPostDatesAvailable() if not dates: return jsonify(Error="No Posts found"), 400 return jsonify(MostActiveUsersPerDates=dao. getMostActivityOfUsers(dates)), 200 elif stat == "repliesperdates": dates = dao.getAvailableRepliesDates() if not dates: return jsonify(Error="No replies found"), 400 return jsonify( RepliesPerDates=dao.getRepliesPerDates(dates)), 200 elif stat == "postsperdates": dates = dao.getPostDatesAvailable() if not dates: return jsonify(Error="No Posts found"), 400 return jsonify(PostsPerDates=dao.getPostsPerDates(dates)), 200 elif stat == "likesperdates": dates = dao.getReactionsDatesAvailable() if not dates: return jsonify(Error="No reactions found"), 400 return jsonify(LikesPerDates=dao.getLikesPerDate(dates)), 200 elif stat == "dislikesperdates": dates = dao.getReactionsDatesAvailable() if not dates: return jsonify(Error="No reactions found"), 400 return jsonify(Dislikes=dao.getDisikesPerDate(dates)), 200 elif stat == "trending": dates = dao.getAvailableTrendingDates() if not dates: return jsonify(Error="No hashtags found"), 400 return jsonify( TrendingHashtags=dao.getTrendringHashtags(dates)), 200 return jsonify(Error="Invalid statistic operation"), 404 return jsonify(Error="Malformed stats request"), 400
def getMostActiveUsers(self): dao = statsDAO() if not dao.isTherePost(): return jsonify(Error="No Posts found"), 400 return jsonify(MostActiveUsersPerDates=dao.getMostActiveUsers()), 200