53 lines
1.5 KiB
JavaScript
53 lines
1.5 KiB
JavaScript
function hideLoginWindow() {
|
|
document.getElementById("signup-window").style.display = "none"
|
|
}
|
|
|
|
async function registerUser() {
|
|
let username = document.getElementById("user-name").value
|
|
let password = document.getElementById("user-pwd").value
|
|
errorField = document.getElementById("login-error")
|
|
|
|
console.log("Registration started");
|
|
|
|
fetch("/create/user/" + username + "/" + password, { method: 'POST' })
|
|
.then(function(response) {
|
|
if (response.status == 200) { // Success
|
|
return response.text()
|
|
}
|
|
if (response.status == 400) { // Bad request
|
|
throw Error("The request had an error")
|
|
}
|
|
if (response.status == 409) { // Conflict
|
|
throw Error("A user with the same name is already registered")
|
|
}
|
|
throw Error("Unexpected response: " + response.statusText)
|
|
}).then(function(text) {
|
|
localStorage.setItem('token', text)
|
|
hideLoginWindow()
|
|
console.log("Registered")
|
|
}).catch(function(error) {
|
|
errorField.innerHTML = error.message
|
|
console.log(error)
|
|
return
|
|
})
|
|
}
|
|
|
|
function loadExistingSession() {
|
|
console.log("Checking to resume session");
|
|
const token = localStorage.getItem('token');
|
|
if (token) {
|
|
console.log("Resuming session with token " + token);
|
|
resumeSession(token);
|
|
}
|
|
}
|
|
|
|
function resumeSession(token) {
|
|
|
|
localStorage.removeItem('token');
|
|
hideLoginWindow()
|
|
}
|
|
|
|
function loginUser() {
|
|
|
|
}
|