X-Git-Url: https://git.auder.net/?p=vchess.git;a=blobdiff_plain;f=client%2Fsrc%2Fmain.js;h=da3e60220a3782dc984d4c3e490fceca4858eba6;hp=e68447ee2dafd410cab229e0c34e9f981a99972c;hb=98db2082fd31e7a7bc0348e31ce119f39dbc31b3;hpb=98f3902b0f3c4370b07d534f5fcbca146a7a651d diff --git a/client/src/main.js b/client/src/main.js index e68447ee..da3e6022 100644 --- a/client/src/main.js +++ b/client/src/main.js @@ -3,6 +3,7 @@ import App from "./App.vue"; import router from "./router"; import params from "./parameters"; //for socket connection import { ajax } from "./utils/ajax"; +import { util } from "./utils/misc"; Vue.config.productionTip = false; @@ -10,13 +11,30 @@ new Vue({ router, render: function(h) { return h(App); + }, +// data: { +// lang: "", +// }, + watch: { + $lang: async function(newLang) { + // Fill modalWelcome, and import translations from "./translations/$lang.js" + document.getElementById("modalWelcome").innerHTML = + require("raw-loader!pug-plain-loader!./modals/welcome/" + newLang + ".pug"); + const tModule = await import("./translations/" + newLang + ".js"); + Vue.prototype.$tr = tModule.translations; + //console.log(tModule.translations); + }, }, created: function() { - //alert("test"); + const supportedLangs = ["en","es","fr"]; + Vue.prototype.$lang = localStorage["lang"] || + supportedLangs.includes(navigator.language) + ? navigator.language + : "en"; ajax("/variants", "GET", res => { Vue.prototype.$variants = res.variantArray; }); - Vue.prototype.$conn = null; //TODO + Vue.prototype.$tr = {}; //to avoid a compiler error const myid = localStorage["myid"] || util.getRandString(); // NOTE: in this version, we don't say on which page we are, yet // ==> we'll say "enter/leave" page XY (in fact juste "enter", seemingly)