index.js 1.68 KB
const langArr = [
  {
    lang: "ru",
    title: "Русский",
    active: true,
  },
  {
    lang: "en",
    title: "English",
    active: false,
  },
];

window.onload = function() {
    set_current_year();
};

function do_download() {
  console.log("do download!");
}

function openLang() {
  const dropdownMenu = document.querySelector(".dropdown-menu");

  if (dropdownMenu != null) {
    dropdownMenu.classList.toggle("show");
  }
}

function switchLang(lang) {
    const dd = document.querySelector("#langSwitcher");

    if (dd != null) {
        const title = langArr.filter(elem => elem.lang === lang)[0].title;
        dd.innerHTML = title;

        const activeLang = langArr.filter(elem => elem.lang !== lang)[0].lang;
        const activeLangNode = document.querySelector(`[data-lang=${CSS.escape(activeLang)}]`);

        if (activeLangNode != null) {
            activeLangNode.classList.remove("active");
        }

        const langNode = document.querySelector(`[data-lang=${CSS.escape(lang)}]`);

        if (langNode != null) {
            langNode.classList.add("active");
        }

        for (const key in langDict) {
          const langNode = document.querySelector(`[data-lang=${CSS.escape(key)}]`);

          if (langNode != null) {
            const translate = langDict[key][lang];

            if (translate != null) {
              langNode.innerHTML = translate;
            }
          }
        }
    }

    openLang();
}

function set_current_year() {
    const year = new Date().getFullYear();
    const yearNode = document.querySelector(".year");

    if (yearNode != null) {
        yearNode.innerHTML = year;
    }
}

function do_support() {
  console.log("do support!");
}