From: Benjamin Auder Date: Tue, 21 Jan 2020 14:27:34 +0000 (+0100) Subject: Fixes around game observing. TODO: abort/resign/draw + corr X-Git-Url: https://git.auder.net/?p=vchess.git;a=commitdiff_plain;h=ab6f48ea4d9c549830f549f077c597f57ea4a57d Fixes around game observing. TODO: abort/resign/draw + corr --- diff --git a/client/src/views/Game.vue b/client/src/views/Game.vue index 984a66bf..09d9df8a 100644 --- a/client/src/views/Game.vue +++ b/client/src/views/Game.vue @@ -189,7 +189,7 @@ export default { { // Minimal game informations: id: this.game.id, - players: this.game.players.map(p => p.name), + players: this.game.players.map(p => { return {name:p.name}; }), vid: this.game.vid, timeControl: this.game.timeControl, }; @@ -512,7 +512,11 @@ export default { gameOver: function(score) { this.game.mode = "analyze"; this.game.score = score; - GameStorage.update(this.gameRef.id, { score: score }); + const myIdx = this.game.players.findIndex(p => { + return p.sid == this.st.user.sid || p.uid == this.st.user.id; + }); + if (myIdx >= 0) //OK, I play in this game + GameStorage.update(this.gameRef.id, { score: score }); }, }, }; diff --git a/server/sockets.js b/server/sockets.js index b51a978a..ed7275ff 100644 --- a/server/sockets.js +++ b/server/sockets.js @@ -91,7 +91,7 @@ module.exports = function(wss) { : 0; const rid = gameSids[gid][idx]; clients[rid].sock.send(JSON.stringify( - {code:"askgame", from: rid})); + {code:"askgame", from: sid})); }); break; }