X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fmain.js;h=6547865a567cbed9ff750ecf5c784ecb44ff7a7c;hb=36093ebabecde5a86451a4600babbecc971887c0;hp=0b9b40230e848671d2150110417998770b50a65d;hpb=625022fdcf750f0aff8fcd699f7e9b89730e1d10;p=vchess.git diff --git a/client/src/main.js b/client/src/main.js index 0b9b4023..6547865a 100644 --- a/client/src/main.js +++ b/client/src/main.js @@ -1,7 +1,8 @@ import Vue from "vue"; import App from "./App.vue"; import router from "./router"; -import { ajax } from "./utils/ajax"; +// Global store: see https://medium.com/fullstackio/managing-state-in-vue-js-23a0352b1c87 +import { store } from "./store"; Vue.config.productionTip = false; @@ -10,18 +11,38 @@ new Vue({ render: function(h) { return h(App); }, - created: function() { - //alert("test"); - ajax("http://localhost:3000/variants", "GET", variantArray => { - console.log("Got variants:"); - console.log(variantArray); - }); - }, +// watch: { +// $route: function(newRoute) { +// //console.log(this.$route.params); +// console.log("navig to " + newRoute); +// //TODO: conn.send("enter", newRoute) +// }, +// }, + created: function() { + window.doClick = (elemId) => { document.getElementById(elemId).click() }; + store.initialize(); + + // TODO: AJAX call get corr games (all variants) + // si dernier lastMove sur serveur n'est pas le mien et nextColor == moi, alors background orange + // ==> background orange si à moi de jouer par corr (sur main index) + // (helper: static fonction "GetNextCol()" dans base_rules.js) + + //TODO: si une partie en cours dans storage, rediriger vers cette partie + //(à condition que l'URL n'y corresponde pas déjà !) + // TODO: à l'arrivée sur le site : set peerID (un identifiant unique + // en tout cas...) si pas trouvé dans localStorage "myid" + // (l'identifiant de l'utilisateur si connecté) +// if (!!localStorage["variant"]) +// location.hash = "#game?id=" + localStorage["gameId"]; + }, }).$mount("#app"); -// TODO: get rules, dynamic import -// Load a rules page (AJAX) -// router.get("/rules/:vname([a-zA-Z0-9]+)", access.ajax, (req,res) => { -// const lang = selectLanguage(req, res); -// res.render("rules/" + req.params["vname"] + "/" + lang); -// }); +// board2, 3, 4 automatiquement, mais rules separement (les 3 pour une) +// game : aussi systématique +// problems: on-demand +// +// See https://router.vuejs.org/guide/essentials/dynamic-matching.html#reacting-to-params-changes +// created: function() { +// window.onhashchange = this.setDisplay; +// }, +//});