var App = (function () { 'use strict'; App.setLocale = function (value, days = true) { var expires = ""; if (days) { var date = new Date(); date.setTime(date.getTime() + (365 * 24 * 60 * 60 * 1000)); expires = "; expires=" + date.toUTCString(); } document.cookie = "team_language=" + (value || "") + expires + "; path=/"; }; App.getLocale = function () { var nameEQ = "team_language="; var ca = document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') c = c.substring(1, c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length); } return null; }; App.translate = function (dir) { var languages; let locale = (App.getLocale() == null) ? "th" : App.getLocale(); let date = Math.floor(Date.now() / 1000); $.ajax({ url: dir + 'json/lang/' + locale + '.json?' + date, dataType: 'json', async: !1, success: function (res) { languages = res sessionStorage.setItem('session_languages', JSON.stringify(res)); if (languages != undefined) { $("label").each(function (index, element) { if ($(this).attr("for") != undefined) { $(this).text(languages[$(this).attr("for")]); } }); $("span").each(function (index, element) { if ($(this).attr("for") != undefined) { $(this).text(languages[$(this).attr("for")]); } }); $("input").each(function (index, element) { if ($(this).attr("for") != undefined) { $(this).attr("placeholder", languages[$(this).attr("for")]); } }); } } }); // console.log(languages); } App.internationalize = function (dir = "../") { let locale = (App.getLocale() == null) ? "th" : App.getLocale(); if (locale == "en") { Parsley.setLocale('en'); App.setLocale("en"); App.translate(dir); flag_login('en'); flag_navbar('en'); } else { Parsley.setLocale('th'); App.setLocale("th"); App.translate(dir); flag_login('th'); flag_navbar('th'); } $('#en-EN').click(function () { // console.log('en click'); Parsley.setLocale('en'); App.setLocale("en"); App.translate(dir); flag_login('en'); flag_navbar('en'); }); $('#th-TH').click(function () { // console.log('th click'); Parsley.setLocale('th'); App.setLocale("th"); App.translate(dir); flag_login('th'); flag_navbar('th'); }); }; App.getSessionLanguages = function() { let s = sessionStorage.getItem("session_languages"); return JSON.parse(s); }; return App; })(App || {}); function flag_login(locale) { if (locale == "en") { $('#flag_th_login').removeClass("flagactive"); $('#flag_th_login').addClass("flaginactive"); $('#flag_en_login').removeClass("flaginactive"); $('#flag_en_login').addClass("flagactive"); } else if (locale == "th") { $('#flag_th_login').removeClass("flaginactive"); $('#flag_th_login').addClass("flagactive"); $('#flag_en_login').removeClass("flagactive"); $('#flag_en_login').addClass("flaginactive"); } } function flag_navbar(locale) { if (locale == "en") { $('#flag_th').removeClass("notification-unread"); $('#flag_en').addClass("notification-unread"); } else if (locale == "th") { $('#flag_th').addClass("notification-unread"); $('#flag_en').removeClass("notification-unread"); } }