<template lang="pug">
main
+ input#modalInfo.modal(type="checkbox")
+ div(role="dialog" aria-labelledby="infoMessage")
+ .card.smallpad.small-modal.text-center
+ label.modal-close(for="modalInfo")
+ h3#infoMessage.section
+ p New game started: #[a(href="/game/" + {{ newGameId }})]
input#modalNewgame.modal(type="checkbox")
div(role="dialog" aria-labelledby="titleFenedit")
.card.smallpad
games: [],
challenges: [],
people: [], //(all) online players
+ newGameId: 0,
newchallenge: {
fen: "",
vid: 0,
},
};
},
+ watch: {
+ // st.variants changes only once, at loading from [] to [...]
+ "st.variants": function(variantArray) {
+ // Set potential challenges and games variant names:
+ this.challenges.forEach(c => {
+ if (c.vname == "")
+ c.vname = this.getVname(c.vid);
+ });
+ this.games.forEach(g => {
+ if (g.vname == "")
+ g.vname = this.getVname(g.vid)
+ });
+ },
+ },
computed: {
uniquePlayers: function() {
// Show e.g. "@nonymous (5)", and do nothing on click on anonymous
);
}
);
- // TODO: I don't like this code below; improvement?
- let retryForVnames = setInterval(() => {
- if (this.st.variants.length > 0) //variants array is loaded
- {
- if (this.games.length > 0 && this.games[0].vname == "")
- {
- // Fix games' vnames:
- this.games.forEach(g => { g.vname = this.getVname(g.vid); });
- }
- if (this.challenges.length > 0 && this.challenges[0].vname == "")
- {
- // Fix challenges' vnames:
- this.challenges.forEach(c => { c.vname = this.getVname(c.vid); });
- }
- clearInterval(retryForVnames);
- }
- }, 50);
}
// 0.1] Ask server for room composition:
const funcPollClients = () => {
this.startNewGame(data.gameInfo);
else
{
- // TODO: notify with game link but do not redirect
+ this.newGameId = data.gameInfo.gameId;
+ let modalBox = document.getElementById("modalInfo");
+ modalBox.checked = true;
+ setTimeout(() => { modalBox.checked = false; }, 2500);
}
break;
}
const game = Object.assign({}, gameInfo, {
// (other) Game infos: constant
fenStart: gameInfo.fen,
+ created: Date.now(),
// Game state (including FEN): will be updated
moves: [],
clocks: [-1, -1], //-1 = unstarted