function loginEvent() { login(); return false; } function login() { let user = document.getElementById("login_user").value; let pass = document.getElementById("login_pass").value; let data = { "email": user, "password": pass }; let ajax = new XMLHttpRequest(); ajax.open("POST", "/api/login", true); ajax.setRequestHeader('Content-Type', 'application/json; charset=UTF-8'); ajax.send(JSON.stringify(data)); ajax.onload = () => { let json = JSON.parse(ajax.responseText); let box = document.getElementById("login_msg"); box.classList.remove("uk-hidden"); box.classList.remove("uk-alert-success"); box.classList.remove("uk-alert-danger"); if(json.message && json.message == "msg.auth.login.successful") { setTimeout(function () { if(window.location.pathname == "/authenticate" && getParameterByName("appId")) window.location.href= "/authenticate"; else window.location.href= "/"; }, 150); box.classList.add("uk-alert-success"); box.getElementsByTagName("p")[0].innerHTML = "Logged in. You will be redirected"; } else if(json.message && json.message == "msg.auth.login.failed") { box.classList.add("uk-alert-danger"); box.getElementsByTagName("p")[0].innerHTML = "Login failed.
Username or Password is wrong."; } }; }; function logout() { let ajax = new XMLHttpRequest(); ajax.open("GET", "/api/logout", true); ajax.setRequestHeader('Content-Type', 'charset=UTF-8'); ajax.send(""); ajax.onload = () => { let json = JSON.parse(ajax.responseText); if(json.message && json.message == "msg.auth.logout.successful") window.location.href= "/"; }; } setTimeout(function () { if(document.getElementById("listener_logout")) { logout(); } }, 100); function cancelRequest() { let ajax = new XMLHttpRequest(); ajax.open("GET", "/api/cancel", true); ajax.setRequestHeader('Content-Type', 'charset=UTF-8'); ajax.send(""); ajax.onload = () => { let json = JSON.parse(ajax.responseText); if(json.message && json.message == "msg.request.operation.cancel.successful") window.location.href= "/"; }; } // @url: https://stackoverflow.com/a/901144 function getParameterByName(name) { let url = window.location.href; name = name.replace(/[\[\]]/g, '\\$&'); var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'), results = regex.exec(url); if (!results) return null; if (!results[2]) return ''; return decodeURIComponent(results[2].replace(/\+/g, ' ')); }