aboutsummaryrefslogtreecommitdiff
path: root/api/rating.py
diff options
context:
space:
mode:
authorLarsV04 <lars.verkerk.pc@gmail.com>2021-04-23 10:05:48 +0200
committerLarsV04 <lars.verkerk.pc@gmail.com>2021-04-23 10:05:48 +0200
commit68dbabfca4722fd367cea6d3cd5d1a114110cd0c (patch)
treec1aed5003b42fe99f7f0da01458218b110eb6a72 /api/rating.py
parent555f1ffa454865b9d6126cbff264766b92d7301e (diff)
Fixed 15
Diffstat (limited to 'api/rating.py')
-rw-r--r--api/rating.py8
1 files changed, 7 insertions, 1 deletions
diff --git a/api/rating.py b/api/rating.py
index cfdf5e4..17d52a2 100644
--- a/api/rating.py
+++ b/api/rating.py
@@ -1,4 +1,5 @@
from db import cursor
+from ruleset import resolve_ruleset
def outcome(outcome_str, player_1):
@@ -12,7 +13,7 @@ def rating_v1(won_games): # python is a garbage language
def get_all_games(user_id):
- return cursor.execute("select player_1_id, player_2_id, outcome " + \
+ return cursor.execute("select player_1_id, player_2_id, outcome, ruleset " + \
"from games " + \
"where (player_1_id = ? or player_2_id = ?) " + \
"and status = \"finished\" or status = \"resign\"", [user_id, user_id]).fetchall()
@@ -29,6 +30,11 @@ def get_rating(user_id):
]
counted_opponents = {}
for game in mapped_games:
+ ruleset = resolve_ruleset(game[3])
+
+ if ruleset.ranked == False:
+ continue
+
# calculate sum score against user (+1 for win, -1 for lose, 0 for draw game)
counted_opponents[game[1]] = (counted_opponents.get(game[1]) or 0) + {
"w": 1,