diff options
-rw-r--r-- | CONFIG.md | 1 | ||||
-rw-r--r-- | jfr_playoff/data.py | 17 |
2 files changed, 12 insertions, 6 deletions
@@ -74,6 +74,7 @@ zestawu pól nie da się pobrać informacji o meczu + obiektem, z możliwymi polami tablicowymi `"place"`, `"winner"` lub `"loser"` - oznacza to, że dane miejsce drabinki jest przeznaczone dla drużyny z odpowiedniego miejsca z listy teamów (sekcja `"teams"`) lub dla zwycięzców/przegranych w meczach o ID podanych w polu - opcjonalne, pola `"winner"` i `"loser"` - które z kolei w tym kontekście oznaczają, miejsca, które zajmują zwycięzcy/przegrani danego meczu w końcowej klasyfikacji - opcjonalnie, pole `"link"` - określające link do wyników meczu, jeśli nie można go pobrać z bazy turnieju + - opcjonalnie, pole `"score"` - dwuelementową tablicę, z której pobierany jest końcowy wynik meczu, jeśli nie można go pobrać z bazy turnieju Na przykładach, pierwszy i ostatni mecz z poniższego pliku: diff --git a/jfr_playoff/data.py b/jfr_playoff/data.py index 23f82b8..51948cd 100644 --- a/jfr_playoff/data.py +++ b/jfr_playoff/data.py @@ -144,6 +144,9 @@ class PlayoffData(object): else '??' for team in match_teams]) else: teams[i].name = '' + if 'score' in match: + for i in range(0, 2): + teams[i].score = match['score'][i] return teams def get_match_info(self, match): @@ -176,14 +179,16 @@ class PlayoffData(object): info.running = int(row[1]) if row[1] >= row[0] - towels[0]: info.running = 0 - if info.teams[0].score > info.teams[1].score: - info.winner = info.teams[0].name - info.loser = info.teams[1].name - else: - info.loser = info.teams[0].name - info.winner = info.teams[1].name except (mysql.connector.Error, TypeError, KeyError): pass + if (info.running == 0) and \ + ((info.teams[0].score != 0) or (info.teams[1].score != 0)): + if info.teams[0].score > info.teams[1].score: + info.winner = info.teams[0].name + info.loser = info.teams[1].name + else: + info.loser = info.teams[0].name + info.winner = info.teams[1].name return info def prefill_leaderboard(self, teams): |