2024-01-26 08:52:00 +01:00
|
|
|
"use strict";
|
|
|
|
|
|
2024-03-12 17:12:03 +01:00
|
|
|
var remFactor = 16;
|
|
|
|
|
var verticalUnit = 1.3 * remFactor;
|
|
|
|
|
function toggleTab(data, tab) {
|
|
|
|
|
if (data.activeTab === tab) {
|
2024-04-07 07:29:27 +02:00
|
|
|
window.scrollTo({
|
|
|
|
|
top: 0,
|
|
|
|
|
behavior: "smooth"
|
|
|
|
|
});
|
2024-03-12 17:12:03 +01:00
|
|
|
setTimeout(function () {
|
|
|
|
|
data.isOpen = false;
|
2024-04-07 07:29:27 +02:00
|
|
|
data.activeTab = "";
|
|
|
|
|
}, 500);
|
2024-03-12 17:12:03 +01:00
|
|
|
} else {
|
|
|
|
|
data.activeTab = tab;
|
|
|
|
|
data.isOpen = true;
|
|
|
|
|
scrollToElem(".active-tab");
|
|
|
|
|
}
|
2024-01-26 08:52:00 +01:00
|
|
|
}
|
|
|
|
|
function scrollToElem(selector) {
|
2024-03-12 17:12:03 +01:00
|
|
|
document.querySelector(".active-tab").scrollTop = 0;
|
2024-01-26 08:52:00 +01:00
|
|
|
setTimeout(function () {
|
2024-03-12 17:12:03 +01:00
|
|
|
var yOffset = -7 * verticalUnit;
|
2024-01-26 08:52:00 +01:00
|
|
|
var elem = document.querySelector(selector);
|
|
|
|
|
var top = elem.getBoundingClientRect().top;
|
|
|
|
|
window.scrollTo({
|
|
|
|
|
top: top + window.scrollY + yOffset,
|
2024-03-12 17:12:03 +01:00
|
|
|
behavior: "smooth"
|
2024-01-26 08:52:00 +01:00
|
|
|
});
|
|
|
|
|
}, 100);
|
|
|
|
|
}
|
2024-04-07 07:29:27 +02:00
|
|
|
function setWindowHeightFactor() {
|
|
|
|
|
var windowHeight = window.innerHeight;
|
|
|
|
|
var min = 650;
|
|
|
|
|
var delta = windowHeight - min;
|
|
|
|
|
var factor = roundToNearestHalf(delta / 300) + 1;
|
|
|
|
|
var head = document.querySelector("head");
|
|
|
|
|
var style = document.createElement("style");
|
|
|
|
|
style.innerText = ":root { --window-height-factor:".concat(factor, " }");
|
|
|
|
|
head.appendChild(style);
|
|
|
|
|
}
|
|
|
|
|
function roundToNearestHalf(num) {
|
|
|
|
|
var round = Math.round(num * 2) / 2;
|
|
|
|
|
return Math.max(round, 0);
|
|
|
|
|
}
|
|
|
|
|
setWindowHeightFactor();
|
2024-01-26 08:52:00 +01:00
|
|
|
document.addEventListener("DOMContentLoaded", function () {
|
|
|
|
|
function toggleLogoState() {
|
|
|
|
|
var scrollY = window.scrollY || window.pageYOffset;
|
|
|
|
|
if (scrollY > 10) {
|
2024-03-10 12:03:31 +01:00
|
|
|
document.querySelector("#main-header").classList.add("minimized");
|
2024-01-26 08:52:00 +01:00
|
|
|
} else {
|
2024-03-10 12:03:31 +01:00
|
|
|
document.querySelector("#main-header").classList.remove("minimized");
|
2024-01-26 08:52:00 +01:00
|
|
|
}
|
|
|
|
|
}
|
2024-04-07 07:29:27 +02:00
|
|
|
window.window.scrollTo({
|
|
|
|
|
top: 0
|
|
|
|
|
});
|
2024-01-26 08:52:00 +01:00
|
|
|
window.addEventListener("scroll", function () {
|
|
|
|
|
toggleLogoState();
|
|
|
|
|
});
|
2024-03-12 17:12:03 +01:00
|
|
|
});
|