X-Git-Url: https://git.auder.net/?a=blobdiff_plain;f=client%2Fsrc%2Fcomponents%2FLanguage.vue;h=c701e590ac5666d151e2d64d8c34a56cbc458907;hb=41c80bb63b85b2696d3925c10784c3d7bb5d2aa3;hp=fc30562057a1ba893b9f4c1d371178b6a2307722;hpb=c66a829b3770122fe0ff2fb9db8def9635bbc334;p=vchess.git diff --git a/client/src/components/Language.vue b/client/src/components/Language.vue index fc305620..c701e590 100644 --- a/client/src/components/Language.vue +++ b/client/src/components/Language.vue @@ -7,15 +7,15 @@ div "fr": "Français", }; input#modalLang.modal(type="checkbox") - div(role="dialog") + div(role="dialog" data-checkbox="modalLang") #language.card label.modal-close(for="modalLang") - form + form(@change="setLanguage") fieldset label(for="langSelect") {{ st.tr["Language"] }} select#langSelect each language,langCode in langName - option(value=langCode selected=(lang==langCode)) + option(value=langCode) =language @@ -28,7 +28,14 @@ export default { st: store.state, }; }, - methods: { + mounted: function() { + // NOTE: better style would be in pug directly, but how? + document.querySelectorAll("#langSelect > option").forEach(opt => { + if (opt.value == this.st.lang) + opt.selected = true; + }); + }, + methods: { setLanguage: function(e) { localStorage["lang"] = e.target.value; store.setLanguage(e.target.value);