diff --git a/index.html b/index.html index 0ba6373..f4c1a56 100644 --- a/index.html +++ b/index.html @@ -11,8 +11,8 @@
diff --git a/scripts/index.js b/scripts/index.js index ed95828..a6de5f7 100644 --- a/scripts/index.js +++ b/scripts/index.js @@ -1,9 +1,20 @@ -import {request, goToPage} from "./utils.js"; +import {request, goToPage, deleteAllCookies} from "./utils.js"; window.addEventListener("DOMContentLoaded", init); async function init () { await populateInstances(); + + let instances = document.querySelector("nav #instances"); + instances.addEventListener("click", () => { + goToPage("index.html"); + }); + + let logout = document.querySelector("nav #logout"); + logout.addEventListener("click", () => { + deleteAllCookies(); + goToPage("login.html"); + }); } async function populateInstances () { diff --git a/scripts/login.js b/scripts/login.js index fb79f43..29ce22c 100644 --- a/scripts/login.js +++ b/scripts/login.js @@ -1,8 +1,9 @@ -import {requestTicket, setTicket, ResponseError, NetworkError, goToPage} from "./utils.js"; +import {requestTicket, setTicket, ResponseError, NetworkError, goToPage, deleteAllCookies} from "./utils.js"; window.addEventListener("DOMContentLoaded", init); function init (){ + deleteAllCookies(); let formSubmitButton = document.querySelector("#submit"); let status = document.querySelector("#status"); formSubmitButton.addEventListener("click", async (e) => { diff --git a/scripts/utils.js b/scripts/utils.js index a478814..8f154d5 100644 --- a/scripts/utils.js +++ b/scripts/utils.js @@ -86,4 +86,8 @@ export function goToPage (page, data={}) { export function getURIData () { let url = new URL(window.location.href); return Object.fromEntries(url.searchParams); +} + +export function deleteAllCookies () { + document.cookie.split(";").forEach(function(c) { document.cookie = c.replace(/^ +/, "").replace(/=.*/, "=;expires=" + new Date().toUTCString() + ";path=/"); }); } \ No newline at end of file