PageSourceSearch

https://musixplora.de/Client/texts/login.js

js musixplora.de collected 2026-10-02 18:05:27 UTC 4,328 bytes, 119 lines download raw bytes

1function getLoginSiteText(content) {
2
3	$(document).attr("title", "musiXplora – Login");
4
5	content.append("<div id='names'>Login</div>");
6	content.append("</br></br>");
7	content.append("Diese Seite dient dem Login und der internen Verwaltung des musiXploras. Aktuell werden keine Nutzerkonten angeboten.</div>");
8	content.append("</br></br>");
9    content.append('<div id="loginGroup" class="input-group">\
10            <label id="response">Bitte Login-Daten eingeben.</label>\
11            <label id="loginLabel" for="login">Benutzer</label>\
12            <input class="searchBox" id="login" name="login">\
13            <label id="passLabel" for="pass">Passwort</label>\
14            <input class="searchBox" id="pass" name="pass" type="password">\
15            <button class="customButton" type="button" id="loginButton" class="btn btn-default form-button" id="loginButton">Anmelden</button>\
16            <button class="customButton" type="button" id="logoutButton" class="btn btn-defaul form-buttont" style="display:none">Abmelden</button>\
17          </div>');
18    content.append("Mit dem Klick auf den Login-Button stimme ich zu, dass fehlgeschlagene Versuche aus Sicherheitsgründen gemeldet werden können.");
19
20    $("#loginGroup").find("input").on("keypress", function(e) {
21        if (e.keyCode === 13) {
22            var data = { "user": $("#login").val(), "password": $("#pass").val() };
23            sendRequestPromise(data, "knockknock", "sendQuery", 1, "search")
24                .then(function(res) {
25                    res = res.resultArray;
26                    if (res) {
27                        globUser = res;
28                        login();
29                    } else
30                        $("#response").html("Passwort und/oder Nutzername falsch!");
31                });
32        }
33    });
34
35    $("#loginButton").on("click", function(e) {
36        var data = { "user": $("#login").val(), "password": $("#pass").val() };
37        sendRequestPromise(data, "knockknock", "sendQuery", 1, "search")
38            .then(function(res) {
39                res = res.resultArray;
40                if (res) {
41                    globUser = res;
42                    login();
43                } else
44                    $("#response").html("Passwort und/oder Nutzername falsch!");
45            });
46    });
47}
48
49function login() {
50
51    appendNavTabs();
52
53    $("#response").html("Login erfolgreich. Viel Spaß.");
54    $("#loginButton").css({ "display": "none" });
55    $("#login").css({ "display": "none" });
56    $("#pass").css({ "display": "none" });
57    $("#loginLabel").css({ "display": "none" });
58    $("#passLabel").css({ "display": "none" });
59
60    $("#logintab").css("display", "none");
61    $("#logouttab").css("display", "block");
62
63    $("#usernav").find("a").first().text(globUser.luserName);
64
65    if(falseURL) {
66    	var tmpURL = falseURL;
67    	falseURL = null;
68    	resolveURL(tmpURL, false, false);
69    }
70}
71
72function logout() {
73    sendRequestPromise([], "logout", "sendQuery", 1, "search")
74        .then(function(res) {
75
76            globUser = null;
77
78            appendNavTabs();
79
80            $("#response").html("Ausloggen erfolgreich.");
81            $("#loginButton").css({ "display": "block" });
82            $("#login").css({ "display": "block" });
83            $("#pass").css({ "display": "block" });
84            $("#loginLabel").css({ "display": "block" });
85            $("#passLabel").css({ "display": "block" });
86
87            $("#logintab").css("display", "block");
88            $("#logouttab").css("display", "none");
89
90            $("#usernav").find("a").first().text("");
91        });
92}
93
94function requestAccess(wishedLevel) {
95    if (globUser && typeof wishedLevel === "number") {
96        if (globUser.luserLevel >= wishedLevel) {
97            return true;
98        } else {
99            return false;
100        }
101    } else {
102        if (wishedLevel === 0) {
103            return true;
104        } else {
105            return false;
106        }
107    }
108}
109
110function getTabElementFromTabIndex(intTabIndex) {
111    var tabElements = Object.values(tabsArray).filter(e => {return parseInt(e[1]) == intTabIndex;});
112    if(tabElements !== null && tabElements !== undefined) {
113        var tabElement = tabElements[0];
114        if(tabElement !== null && tabElement !== undefined) {
115            return tabElement;
116        }
117    }
118    return null;
119}

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.