diff --git a/frontend/src/i18n.js b/frontend/src/i18n.js index eaf2dac..d8909f1 100644 --- a/frontend/src/i18n.js +++ b/frontend/src/i18n.js @@ -9,7 +9,7 @@ * */ -import { getCookie } from './utils.js'; +import { getCookie, setCookie } from './utils.js'; const default_lang = "EN"; let langs; @@ -34,10 +34,6 @@ export default function i18n(key, options) { return ret; } -// -// Those functions are utility functions use by previous exported functions. -// - /** * Function that load the file with translation from the specified lang and return a dictionnary * @param select the language to load. could be null to fetch the cookies for an answer @@ -61,3 +57,8 @@ export async function loadLangs(lang){ langs = filteredLines; } await loadLangs(); + +export async function setLang(lang){ + setCookie("lang", lang); + await loadLangs(); +} diff --git a/frontend/src/utils.js b/frontend/src/utils.js index e79eec4..bb9e61f 100644 --- a/frontend/src/utils.js +++ b/frontend/src/utils.js @@ -2,7 +2,7 @@ * Return the content of a cookie with specified key * @param key cookie name */ -function getCookie(key){ +export function getCookie(key){ key = key + "=" let cookies = decodeURIComponent(document.cookie).split(";"); for (let el of cookies) { @@ -14,4 +14,12 @@ function getCookie(key){ return ""; } -export {getCookie}; +/** + * Return the content of a cookie with specified key + * @param key cookie name + */ +export function setCookie(key, value){ + cookie = key + "=" + value + ";"; + document.cookie = cookie; + // Here we can apreciate the stupidity of Javascript :/ +}