Complete task javascript
This commit is contained in:
@@ -30,6 +30,7 @@ async function login() {
|
|||||||
|
|
||||||
// store user data in session storage
|
// store user data in session storage
|
||||||
let data = await response.json();
|
let data = await response.json();
|
||||||
|
sessionStorage.setItem("uid", data.uid);
|
||||||
sessionStorage.setItem("name", data.name);
|
sessionStorage.setItem("name", data.name);
|
||||||
sessionStorage.setItem("role", data.role);
|
sessionStorage.setItem("role", data.role);
|
||||||
|
|
||||||
@@ -47,24 +48,26 @@ async function login() {
|
|||||||
async function populateScreen() {
|
async function populateScreen() {
|
||||||
// get task data
|
// get task data
|
||||||
let taskPage = document.getElementById("tasks");
|
let taskPage = document.getElementById("tasks");
|
||||||
|
taskPage.innerHTML = "";
|
||||||
let response = await fetch("/getTasks");
|
let response = await fetch("/getTasks");
|
||||||
let tasksRaw = await response.json();
|
let tasksRaw = await response.json();
|
||||||
let tasks = tasksRaw.tasks;
|
let tasks = tasksRaw.tasks;
|
||||||
|
|
||||||
// get historical data
|
// get historical data
|
||||||
let historyPage = document.getElementById("history");
|
let historyPage = document.getElementById("history");
|
||||||
|
historyPage.innerHTML = "";
|
||||||
response = await fetch("/getHistory");
|
response = await fetch("/getHistory");
|
||||||
let historyRaw = await response.json();
|
let historyRaw = await response.json();
|
||||||
let history = historyRaw.history;
|
let history = historyRaw.history;
|
||||||
|
|
||||||
|
|
||||||
for (let i = 0; i < tasks.length; i++) {
|
for (let i = 0; i < tasks.length; i++) {
|
||||||
taskPage.innerHTML += `
|
taskPage.innerHTML += `
|
||||||
<div class="half">
|
<div id="${tasks[i].tid}" class="half" style="height: fit-content">
|
||||||
<article class="card">
|
<div class="button" onclick="completeTask(${tasks[i].tid})">
|
||||||
<header>
|
<p id="taskName">${tasks[i].name}</p>
|
||||||
<p>${tasks[i].name}</p>
|
<p id="${tasks[i].tid}-p">${tasks[i].points} points</p>
|
||||||
<p>${tasks[i].points}</p>
|
</div>
|
||||||
</header>
|
|
||||||
</article>
|
|
||||||
</div>`
|
</div>`
|
||||||
}
|
}
|
||||||
for (let i = (history.length -1); i >= 0; i-=1) {
|
for (let i = (history.length -1); i >= 0; i-=1) {
|
||||||
@@ -82,7 +85,26 @@ async function populateScreen() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function switchScreen(button) {
|
async function completeTask(taskID) {
|
||||||
|
let points = document.getElementById(`${taskID}-p`).innerText;
|
||||||
|
let time = new Date().toISOString().split(".")[0];
|
||||||
|
let uid = sessionStorage.getItem("uid");
|
||||||
|
let response = await fetch("/completeTask", {
|
||||||
|
method: "POST",
|
||||||
|
headers: {
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
},
|
||||||
|
body: JSON.stringify({
|
||||||
|
uid: Number(uid),
|
||||||
|
tid: Number(taskID),
|
||||||
|
time: time,
|
||||||
|
pointsGained: Number(points)
|
||||||
|
})
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
async function switchScreen(button) {
|
||||||
|
await populateScreen();
|
||||||
document.getElementById("tasks").setAttribute("style", "display: none;");
|
document.getElementById("tasks").setAttribute("style", "display: none;");
|
||||||
document.getElementById("history").setAttribute("style", "display: none;");
|
document.getElementById("history").setAttribute("style", "display: none;");
|
||||||
document.getElementById("addTask").setAttribute("style", "display: none;");
|
document.getElementById("addTask").setAttribute("style", "display: none;");
|
||||||
|
|||||||
Reference in New Issue
Block a user