</script>
<style lang="sass">
-//html, *
-// font-family: "Open Sans", Arial, sans-serif
-// --back-color: #f2f2f2
-// --a-link-color: black
-// --a-visited-color: black
+html, *
+ font-family: "Open Sans", Arial, sans-serif
+ --back-color: #f2f2f2
+ --a-link-color: black
+ --a-visited-color: black
body
padding: 0
min-width: 320px
#app
- font-family: "Open Sans", "Avenir", Helvetica, Arial, sans-serif
-webkit-font-smoothing: antialiased
-moz-osx-font-smoothing: grayscale
"Settings": "Settings",
"Stop game": "Stop game",
"Subject": "Subject",
+ "Target is not connected": "Target is not connected",
"Terminate game?": "Terminate game?",
+ "This tab is now offline": "This tab is now offline",
"Three repetitions": "Three repetitions",
"Time": "Time",
"To": "To",
"Update": "Update",
"Variant": "Variant",
"Variants": "Variants",
- "Warning: target is not connected": "Warning: target is not connected",
- "Warning: multi-tabs not supported": "Warning: multi-tabs not supported",
"White": "White",
"White to move": "White to move",
"White win": "White win",
"Settings": "Configuraciones",
"Stop game": "Terminar la partida",
"Subject": "Asunto",
+ "Target is not connected": "El destinatario no está conectado",
"Terminate game?": "¿ Terminar la partida ?",
+ "This tab is now offline": "Esta pestaña ahora está desconectada",
"Three repetitions": "Tres repeticiones",
"Time": "Tiempo",
"To": "A",
"Update": "Actualización",
"Variant": "Variante",
"Variants": "Variantes",
- "Warning: target is not connected": "Advertencia : el destinatario no está conectado",
- "Warning: multi-tabs not supported": "Advertencia : múltiples pestañas no soportado",
"White": "Blancas",
"White to move": "Juegan las blancas",
"White win": "Las blancas gagnan",
"Settings": "Réglages",
"Stop game": "Arrêter la partie",
"Subject": "Sujet",
+ "Target is not connected": "La cible n'est pas connectée",
"Terminate game?": "Stopper la partie ?",
+ "This tab is now offline": "Cet onglet est désormais hors ligne",
"Three repetitions": "Triple répétition",
"Time": "Temps",
"To": "À",
"Update": "Mise à jour",
"Variant": "Variante",
"Variants": "Variantes",
- "Warning: target is not connected": "Attention : la cible n'est pas connectée",
- "Warning: multi-tabs not supported": "Attention : mode multi-onglets non supporté",
"White": "Blancs",
"White to move": "Trait aux blancs",
"White win": "Les blancs gagnent",
case "duplicate":
this.st.conn.send(JSON.stringify({code:"duplicate",
page:"/game/" + this.game.id}));
- alert(this.st.tr["Warning: multi-tabs not supported"]);
+ alert(this.st.tr["This tab is now offline"]);
break;
// 0.2] Receive clients list (just socket IDs)
case "pollclients":
if (!targetSid)
{
if (!!warnDisconnected)
- alert(this.st.tr["Warning: target is not connected"]);
+ alert(this.st.tr["Target is not connected"]);
return false;
}
}
case "duplicate":
this.st.conn.send(JSON.stringify({code:"duplicate", page:"/"}));
this.st.conn.send = () => {};
- alert(this.st.tr["Warning: multi-tabs not supported"]);
+ alert(this.st.tr["This tab is now offline"]);
break;
// 0.2] Receive clients list (just socket IDs)
case "pollclients":
let clients = {}; //associative array sid --> socket
wss.on("connection", (socket, req) => {
const query = getJsonFromUrl(req.url);
+ if (query["page"] != "/" && query["page"].indexOf("/game/") < 0)
+ return; //other tabs don't need to be connected
const sid = query["sid"];
const notifyRoom = (page,code,obj={},excluded=[]) => {
Object.keys(clients).forEach(k => {