let adminToken = null;
const adminWrapper = document.getElementById("adminWrapper");
const adminZone = document.getElementById("adminZone");
const createTableForm = document.getElementById("createTableForm");
const newTableName = document.getElementById("newTableName");
const newTablePass = document.getElementById("newTablePass");
async function getTable(name, pass) {
try {
const headers = new Headers();
headers.set('Authorization', 'Bearer ' + adminToken.access_token);
const res = await fetch(`/admin/api/table/${name}?passcode=${pass}`, {
method: 'GET',
headers: headers,
});
if (res.ok) {
document.getElementById("input_table_name").value = name;
document.getElementById("input_table_pass").value = pass;
dial();
infoHtml = "← table list
"; infoHtml += await res.text(); infoHtml += "" infoHtml += "Map Image" infoHtml += "" adminZone.innerHTML = infoHtml; } else { console.log(res.status); } } catch (err) { setErr(`${err.name}: ${err.message}`); } } async function uploadMapImg() { try { var input = document.getElementById("map_img_upload"); var data = new FormData(); data.append('file', input.files[0]); data.append('name', tableKey.name); data.append('passcode', tableKey.passcode); const headers = new Headers(); headers.set('Authorization', 'Bearer ' + adminToken.access_token); res = await fetch(`/admin/api/upload/${tableKey.name}/map/`, { headers: headers, method: "POST", body: data, }); if (res.ok) { getTable(tableKey.name, tableKey.passcode); } else { throw new Error("Something went wrong uploading the map BG..."); } } catch (err) { setErr(`${err.name}: ${err.message}`); } } async function destroyTable() { try { const headers = new Headers(); headers.set('Authorization', 'Bearer ' + adminToken.access_token); const res = await fetch(`/admin/api/table/${tableKey.name}`, { method: 'DELETE', headers: headers, body: JSON.stringify(tableKey) }); if (res.ok) { conn.close(1000); getTables(); } else { setErr(await res.json()); } } catch (err) { setErr(`${err.name}: ${err.message}`); } } async function getTables() { try { const headers = new Headers(); headers.set('Authorization', 'Bearer ' + adminToken.access_token); const res = await fetch('/admin/api/table/', { method: 'GET', headers: headers }); if (res.ok) { const tableList = await res.json(); let tableListHTML = "