From 90dc5dac8440b256e5c3ac418614b425c3d47f68 Mon Sep 17 00:00:00 2001 From: AdrienLSH Date: Tue, 14 May 2024 13:26:22 +0200 Subject: [PATCH] ProfilePageView: fix winrate --- django/frontend/static/js/views/ProfilePageView.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/django/frontend/static/js/views/ProfilePageView.js b/django/frontend/static/js/views/ProfilePageView.js index 08a4bc6..aea532c 100644 --- a/django/frontend/static/js/views/ProfilePageView.js +++ b/django/frontend/static/js/views/ProfilePageView.js @@ -21,7 +21,7 @@ export default class extends AbstractView { await this.fillHistory(games); await this.fillStatistics(games); - if (this.profile.id === client.me.id) + if (!client.me || this.profile.id === client.me.id) return; const addFriendButton = document.getElementById('addFriendButton'), @@ -78,8 +78,8 @@ export default class extends AbstractView { */ async fillStatistics(games) { - let winrateDiv = document.getElementById("winrate"); - + const winrateDiv = document.getElementById("winrate"); + let win = 0; let lose = 0; @@ -87,13 +87,17 @@ export default class extends AbstractView { if (game.finished === false) return - if (client.me.id === game.winner.id) + if (this.profile.id === game.winner.id) win++; else lose++; }); - winrateDiv.innerText = `winrate: ${win + lose === 0 ? "🤓" : win / (win + lose)}` + if (games.length) { + winrateDiv.innerText = `Winrate: ${win / (win + lose) * 100}%`; + } else { + winrateDiv.innerText = `Winrate: 🤓` + } } async fillHistory(games)