Exemplo n.º 1
0
def count_points_user(the_bot,user):
    print("user: "******"user_id", user_id)
    points = PointsGiven.select(PointsGiven.point,PointsGiven.user_who_received_point).where(PointsGiven.user_who_received_point == user_id )
    sq = PointsGiven.select()
    tweetspositive = sq.where((PointsGiven.user_who_received_point ==  user_id ) & (PointsGiven.point == 1) )
    tweetsanswer = sq.where((PointsGiven.user_who_received_point ==  user_id ) & (PointsGiven.point == 2) )
    answer_points = (tweetsanswer.count())* 2
    tweetsnegative = sq.where((PointsGiven.user_who_received_point ==  user_id ) & (PointsGiven.point == -1) )
    quarterpoint = sq.where((PointsGiven.user_who_received_point ==  user_id ) & (PointsGiven.point == -0.25) )
    quarterpoint = (quarterpoint.count())*0.25
    totalpoints = (tweetspositive.count() + answer_points ) - (tweetsnegative.count()) - quarterpoint
    print("total points: ", totalpoints)
    return totalpoints
Exemplo n.º 2
0
def get_leaderboard():
    users = []
    leaderboard = {}

    Point = PointsGiven.select(PointsGiven.user_who_received_point).distinct()
    for u in Point:
        users.append( u.user_who_received_point.user_id)
        print("user who received the point: ", u.user_who_received_point.user_id)

    for item in users:
        print("user:"******"count pos is: ",tweetspositive.count())
        print("user is:", item)

        tweetsanswer = sq.where((PointsGiven.user_who_received_point ==  item ) & (PointsGiven.point == 2) )
        answer_points = (tweetsanswer.count())* 2
        print("count answ is: ",answer_points)
        print("user is:", item)

        tweetsnegative = sq.where((PointsGiven.user_who_received_point == item) & (PointsGiven.point == -1) )
        print("count neg is: ",tweetsnegative.count())
        print("user is:", item)

        quarterpoint = sq.where((PointsGiven.user_who_received_point ==  item ) & (PointsGiven.point == -0.25) )
        quarterpoint = (quarterpoint.count())*0.25
        print("quarter is: ",)
        print("user is:", item)
        totalpoints = (tweetspositive.count() + answer_points ) - (tweetsnegative.count()) - quarterpoint
        leaderboard[item] = totalpoints
    sorted_dic = [(k,v) for v,k in sorted(
               [(v,k) for k,v in leaderboard.items()],reverse=True
               )
        ]

    return sorted_dic