p(v-html="infoMessage")
input#modalNewgame.modal(type="checkbox")
div(role="dialog" aria-labelledby="titleFenedit")
- .card.smallpad
+ .card.smallpad(@keyup.enter="newChallenge")
label#closeNewgame.modal-close(for="modalNewgame")
fieldset
label(for="selectVariant") {{ st.tr["Variant"] }}
input#inputFen(type="text" v-model="newchallenge.fen")
button(@click="newChallenge") {{ st.tr["Send challenge"] }}
.row
- .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
+ .col-sm-12.col-md-9.col-md-offset-3
button(onClick="doClick('modalNewgame')") New game
.row
- .col-sm-12.col-md-10.col-md-offset-1.col-lg-8.col-lg-offset-2
+ .col-sm-12.col-md-3
+ Chat(:players="[]")
+ .col-sm-12.col-md-9
.collapse
input#challengeSection(type="radio" checked aria-hidden="true" name="accordion")
label(for="challengeSection" aria-hidden="true") Challenges
import { ArrayFun } from "@/utils/array";
import { ajax } from "@/utils/ajax";
import { getRandString, shuffle } from "@/utils/alea";
+import Chat from "@/components/Chat.vue";
import GameList from "@/components/GameList.vue";
import ChallengeList from "@/components/ChallengeList.vue";
import { GameStorage } from "@/utils/gameStorage";
export default {
name: "my-hall",
components: {
+ Chat,
GameList,
ChallengeList,
},
// ==> Moves sent by connected remote player(s) if live game
let url = "/game/" + g.id;
if (g.type == "live")
- {
- const remotes = g.players.filter(p => this.people.some(pl => pl.sid == p.sid));
- const rIdx = (remotes.length == 1 ? 0 : Math.floor(Math.random()*2));
- url += "?rid=" + remotes[rIdx].sid;
- }
+ url += "?rid=" + g.rid;
this.$router.push(url);
},
getVname: function(vid) {
const data = JSON.parse(msg.data);
switch (data.code)
{
+ case "duplicate":
+ alert("Warning: duplicate 'offline' connection");
+ break;
// 0.2] Receive clients list (just socket IDs)
case "pollclients":
{
// Ask identity, challenges and game(s)
this.st.conn.send(JSON.stringify({code:"askidentity", target:sid}));
this.st.conn.send(JSON.stringify({code:"askchallenge", target:sid}));
- this.st.conn.send(JSON.stringify({code:"askgame", target:sid}));
});
+ // Also ask current games to all playing peers (TODO: some design issue)
+ this.st.conn.send(JSON.stringify({code:"askgames"}));
break;
}
case "askidentity":