1
Fork 0
mirror of https://github.com/SapphireServer/Sapphire.git synced 2025-05-03 17:27:47 +00:00
sapphire/web/assets/js/login.js

50 lines
1.3 KiB
JavaScript
Raw Normal View History

2023-10-20 11:16:13 -03:00
function readBody(xhr) {
var data;
if (!xhr.responseType || xhr.responseType === "text") {
data = xhr.responseText;
} else if (xhr.responseType === "document") {
data = xhr.responseXML;
} else {
data = xhr.response;
}
return data;
}
function doLogin() {
var url = "sapphire-api/lobby/login";
var params = "{\"username\":\"" + document.getElementsByName('username')[0].value + "\",\"pass\":\"" + document.getElementsByName('password')[0].value + "\"}";
var xhr = new XMLHttpRequest();
xhr.open("POST", url, true);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
try {
var response = readBody(xhr);
var parsed = JSON.parse(response);
window.external.Boot(parsed.sId, parsed.lobbyHost, parsed.frontierHost);
} catch(err) {
document.getElementById("Error").innerHTML = "Login failed.";
}
}
}
xhr.send(params);
}
function keypressing(e) {
if (!e) e = window.event;
var keyCode = e.keyCode || e.which;
if (keyCode == '13'){
doLogin();
return false;
}
}
document.getElementsByName('password')[0].addEventListener('keypress', function(event) {
return keypressing(event);
});
document.getElementById('submitButton').addEventListener('click', doLogin);