X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=public%2Fjavascripts%2Fvariant.js;h=819bf90fd10b6d8e9c4df595fe2fa09ee404346f;hb=375ecdd1387e729f85ed114e82253469e4849869;hp=f9d23d8bf67a175c2d4ef706527b7d4262c33b82;hpb=f5d3e4f539355d166baf38bab97480582e90e4af;p=vchess.git diff --git a/public/javascripts/variant.js b/public/javascripts/variant.js index f9d23d8b..819bf90f 100644 --- a/public/javascripts/variant.js +++ b/public/javascripts/variant.js @@ -1,7 +1,28 @@ new Vue({ el: "#variantPage", - data: { display: "" }, //do not show anything... - // TODO: listen event "show problem", avec le probleme stringifié en arg - // Alors: display=game, mode=friend, newGame(fen, turn, ...), - // et set Instructions+Soluce + data: { + display: "play", //default: play! + problem: undefined, //current problem in view + }, + created: function() { + const url = window.location.href; + const hashPos = url.indexOf("#"); + if (hashPos >= 0) + this.setDisplay(url.substr(hashPos+1)); + }, + methods: { + showProblem: function(problemTxt) { + this.problem = JSON.parse(problemTxt); + this.display = "play"; + }, + setDisplay: function(elt) { + this.display = elt; + let menuToggle = document.getElementById("drawer-control"); + if (!!menuToggle) + menuToggle.checked = false; + }, + notDark: function() { + return variant != "Dark"; + }, + }, });