93 lines
2 KiB
JavaScript
93 lines
2 KiB
JavaScript
function merp() {
|
|
console.log('Merp!');
|
|
}
|
|
|
|
|
|
function toggle_all_details(state) {
|
|
const elements = document.getElementsByTagName('details');
|
|
|
|
for (let element of elements) {
|
|
if (state && !element.hasAttribute('open')) {
|
|
element.setAttribute('open', null);
|
|
} else if (!state && element.hasAttribute('open')) {
|
|
element.removeAttribute('open');
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
function fetch_saves() {
|
|
const saves = document.getElementById('saves');
|
|
|
|
fetch('/api/list').then((resp) => {
|
|
if (!resp.ok) {
|
|
return Promise.reject(resp);
|
|
}
|
|
|
|
return resp.json();
|
|
|
|
}).then((data) => {
|
|
data.map((id) => {
|
|
fetch(`/api/save/${id}/html`).then((resp) => {
|
|
if (!resp.ok) {
|
|
return Promise.reject(resp);
|
|
}
|
|
|
|
return resp.text();
|
|
|
|
}).then((data) => {
|
|
const div = document.createElement('div');
|
|
div.innerHTML = data;
|
|
|
|
saves.appendChild(div.firstChild);
|
|
});
|
|
});
|
|
});
|
|
}
|
|
|
|
|
|
function update_save(id) {
|
|
fetch(`/api/save/${id}`).then((resp) => {
|
|
if (!resp.ok) {
|
|
return Promise.reject(resp);
|
|
}
|
|
|
|
return resp.json();
|
|
}).then((data) => {
|
|
const save = document.getElementById(id);
|
|
|
|
save.getElementsByClassName('name')[0].innerHTML = data.name;
|
|
|
|
save.getElementsByClassName('level')[0]
|
|
.getElementsByClassName('value')[0].innerHTML = data.name;
|
|
|
|
save.getElementsByClassName('xp')[0]
|
|
.getElementsByClassName('value')[0].innerHTML = data.xp;
|
|
|
|
save.getElementsByClassName('money')[0]
|
|
.getElementsByClassName('value')[0].innerHTML = data.money;
|
|
|
|
save.getElementsByClassName('eridium')[0]
|
|
.getElementsByClassName('value')[0].innerHTML = data.eridium;
|
|
|
|
save.getElementsByClassName('readonly')[0]
|
|
.getElementsByClassName('value')[0].innerHTML = data.readonly;
|
|
});
|
|
}
|
|
|
|
|
|
function toggle_readonly(id) {
|
|
fetch(`/api/save/${id}/toggle`).then((resp) => {
|
|
if (!resp.ok) {
|
|
return Promise.reject(resp);
|
|
}
|
|
|
|
return resp.json();
|
|
}).then((data) => {
|
|
const save = document.getElementById(id)
|
|
.getElementsByClassName('readonly')[0]
|
|
.getElementsByClassName('value')[0].innerHTML = data.readonly;
|
|
|
|
});
|
|
}
|