aboutsummaryrefslogtreecommitdiff
path: root/js/navigation.js
blob: a76b19ed3f33d4791d1184f5144b84122c507f20 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
window.addEventListener('load', () => {
    document.getElementById('loading').style.display = "none";
})

function setImageSource(image, source) {
    if (image.src !== source) {
        image.src = source;
    }
}

doCheckForActiveItem = true;

Array.from(document.getElementsByClassName("tab")).forEach((par) => {
    item = par.children[0];
    if (typeof item.getAttribute("data-image-hover") === "string") {
        item.setAttribute("data-image-normal", item.src)
        par.addEventListener('mouseenter', (e) => {
            doCheckForActiveItem = false;

            if (e.target.classList.contains("tab-active")) {
                item = e.target.children[0];
                item.style.opacity = ".75";
            } else {
                item = e.target.children[0];
                setImageSource(item, item.getAttribute("data-image-hover"));
            }
        })
        par.addEventListener('mouseleave', (e) => {
            doCheckForActiveItem = true;

            if (e.target.classList.contains("tab-active")) {
                item = e.target.children[0];
                item.style.opacity = "1";
            } else {
                item = e.target.children[0];
                setImageSource(item, item.getAttribute("data-image-normal"));
            }
        })
    }
})

setInterval(() => {
    Array.from(document.getElementsByClassName("tab")).forEach((par) => {
        if (!doCheckForActiveItem) { return; }
        item = par.children[0];
        if (par.classList.contains("tab-active")) {
            setImageSource(item, item.getAttribute("data-image-active"));
        } else {
            setImageSource(item, item.getAttribute("data-image-normal"));
        }
    })
}, 100)

function openTab(tab) {
    Array.from(document.getElementsByClassName("tab")).forEach((par) => {
        if (par.classList.contains("tab-active")) {
            par.classList.remove("tab-active");
        }
    })
    document.getElementById('tab-' + tab).classList.add("tab-active");
    doCheckForActiveItem = true;
}

function openPane(pane) {
    Array.from(document.getElementsByTagName("iframe")).forEach((par) => {
        par.src = "about:blank";
    })
    Array.from(document.getElementsByClassName("pane")).forEach((par) => {
        $("#" + par.id).fadeOut(200);
    })
    $("#pane-" + pane).fadeIn(200);
    $(".loader").fadeIn(200);
    switch (pane) {
        case "radio":
            document.getElementById('frame-' + pane).src = "/app/radio"
            break;
        case "money":
            document.getElementById('frame-' + pane).src = "/app/money"
            break;
        case "contacts":
            document.getElementById('frame-' + pane).src = "/app/contacts"
            break;
        case "home":
            document.getElementById('frame-' + pane).src = "/app/home"
            break;
        case "space":
            if (navigator.userAgent.includes("+Familine/")) {
                $(".loader").fadeOut(200);
                document.getElementById('frame-' + pane).loadURL("https://chat.familine.minteck.org");
                document.getElementById('frame-' + pane).setZoomFactor(0.9);
                break;
            } else {
                document.getElementById('frame-' + pane).src = "/app/space"
                break;
            }
        case "cinema":
            document.getElementById('frame-' + pane).src = "https://cinema.familine.minteck.org"
            break;
        case "share":
            document.getElementById('frame-' + pane).src = "https://share.familine.minteck.org"
            break;
        case "help":
            document.getElementById('frame-' + pane).src = "/app/help"
            break;
    }
}

window.addEventListener('load', () => {
    try { openPane('home'); } catch (e) {}
})