From 479044d4eacd28c1342a5a841943d7b0cc607a87 Mon Sep 17 00:00:00 2001 From: chopster44 Date: Sat, 29 Jul 2023 20:41:17 +0100 Subject: [PATCH] =?UTF-8?q?Added=20quickLog=E2=84=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/index.html | 2 +- frontend/index.js | 40 ++++++++++++++++++++++++++++++++-------- 2 files changed, 33 insertions(+), 9 deletions(-) diff --git a/frontend/index.html b/frontend/index.html index f931339..f5a696c 100644 --- a/frontend/index.html +++ b/frontend/index.html @@ -8,7 +8,6 @@ -
@@ -66,5 +65,6 @@
+ \ No newline at end of file diff --git a/frontend/index.js b/frontend/index.js index 4252cd5..35845fe 100644 --- a/frontend/index.js +++ b/frontend/index.js @@ -1,3 +1,7 @@ +function sleep(ms) { + return new Promise(resolve => setTimeout(resolve, ms)); +} + async function login() { // tell the user the app is loading document.getElementById("loginSubmit").value = "Loading"; @@ -30,12 +34,12 @@ async function login() { // store user data in session storage let data = await response.json(); - sessionStorage.setItem("uid", data.uid); - sessionStorage.setItem("name", data.name); - sessionStorage.setItem("role", data.role); + localStorage.setItem("uid", data.uid); + localStorage.setItem("name", data.name); + localStorage.setItem("role", data.role); // if role is admin, keep auto styling - if (sessionStorage.getItem("role") !== "admin") { + if (localStorage.getItem("role") !== "admin") { document.getElementById("addButton").setAttribute("style", "display: none;"); document.getElementById("taskButton").classList.value = "half"; document.getElementById("historyButton").classList.value = "half"; @@ -69,7 +73,7 @@ async function populateScreen() { // if it is a user make the tasks add points // or if admin make it do nothing - if (sessionStorage.getItem("role") === "user") { + if (localStorage.getItem("role") === "user") { try { for (let i = 0; i < tasks.length; i++) { taskPage.innerHTML += ` @@ -83,7 +87,7 @@ async function populateScreen() { } catch (e) { taskPage.innerHTML +=`such empty` } - } else if (sessionStorage.getItem("role") === "admin") { + } else if (localStorage.getItem("role") === "admin") { try { for (let i = 0; i < tasks.length; i++) { taskPage.innerHTML += ` @@ -127,7 +131,7 @@ async function populateScreen() { async function completeTask(taskID) { let points = document.getElementById(`${taskID}-p`).innerText.split(" ")[0]; let time = new Date().toISOString().split(".")[0]; - let uid = sessionStorage.getItem("uid"); + let uid = localStorage.getItem("uid"); await fetch("/completeTask", { method: "POST", headers: { @@ -173,4 +177,24 @@ async function newTask() { }); points.value = ""; name.value = ""; -} \ No newline at end of file +} + +async function fastLog() { + sleep(500); + if (localStorage.getItem("uid") != null && localStorage.getItem("name") != null && localStorage.getItem("role") != null) { + document.getElementById("login").setAttribute("style", "display: none;"); + document.getElementById("mainPage").setAttribute("style", ""); + if (localStorage.getItem("role") !== "admin") { + document.getElementById("addButton").setAttribute("style", "display: none;"); + document.getElementById("taskButton").classList.value = "half"; + document.getElementById("historyButton").classList.value = "half"; + document.getElementById("menu").classList.value = "flex two"; + } + + await populateScreen(); + } else { + // do nothing + } +} + +fastLog(); \ No newline at end of file