hide unnecessary boxes based on session
parent
6f77bfc0a2
commit
e8bfaeb104
|
@ -35,6 +35,35 @@ const openLocker = (lat: string, lon: string, openCode: string, id: string) => {
|
|||
.addEventListener("click", () => openLockerConfirm(lat, lon, openCode, id));
|
||||
};
|
||||
|
||||
const refreshPackages = () =>
|
||||
request("packages", {}).then((res) => {
|
||||
const table = document.querySelector("tbody")!;
|
||||
res.forEach((shipment: Package) => {
|
||||
const row = table.insertRow();
|
||||
const id = row.insertCell(0);
|
||||
const sender = row.insertCell(1);
|
||||
const status = row.insertCell(2);
|
||||
const locker = row.insertCell(3);
|
||||
const openAction = row.insertCell(4);
|
||||
|
||||
row.dataset.lat = shipment.pickupPoint.location.latitude.toString();
|
||||
row.dataset.lon = shipment.pickupPoint.location.longitude.toString();
|
||||
row.dataset.openCode = shipment.openCode;
|
||||
row.dataset.id = shipment.shipmentNumber;
|
||||
|
||||
id.innerText = shipment.shipmentNumber;
|
||||
sender.innerText = shipment.senderName;
|
||||
status.innerText = shipment.status;
|
||||
locker.innerText = `${shipment.pickupPoint.name} - ${shipment.pickupPoint.description}`;
|
||||
openAction.innerHTML = "Open";
|
||||
openAction.addEventListener("click", (event) => {
|
||||
const data = ((event.target as Element).parentNode as HTMLElement).dataset;
|
||||
openLocker(data.lat!, data.lon!, data.openCode!, data.id!);
|
||||
});
|
||||
|
||||
// console.log(shipment);
|
||||
});
|
||||
});
|
||||
window.addEventListener("load", () => {
|
||||
const login = document.querySelector(".login-form")!;
|
||||
login.addEventListener("submit", (event) => {
|
||||
|
@ -74,33 +103,18 @@ window.addEventListener("load", () => {
|
|||
errorBoxWindow.style.display = "none";
|
||||
});
|
||||
|
||||
request("packages", {}).then((res) => {
|
||||
const table = document.querySelector("tbody")!;
|
||||
res.forEach((shipment: Package) => {
|
||||
const row = table.insertRow();
|
||||
const id = row.insertCell(0);
|
||||
const sender = row.insertCell(1);
|
||||
const status = row.insertCell(2);
|
||||
const locker = row.insertCell(3);
|
||||
const openAction = row.insertCell(4);
|
||||
|
||||
row.dataset.lat = shipment.pickupPoint.location.latitude.toString();
|
||||
row.dataset.lon = shipment.pickupPoint.location.longitude.toString();
|
||||
row.dataset.openCode = shipment.openCode;
|
||||
row.dataset.id = shipment.shipmentNumber;
|
||||
|
||||
id.innerText = shipment.shipmentNumber;
|
||||
sender.innerText = shipment.senderName;
|
||||
status.innerText = shipment.status;
|
||||
locker.innerText = `${shipment.pickupPoint.name} - ${shipment.pickupPoint.description}`;
|
||||
openAction.innerHTML = "Open";
|
||||
openAction.addEventListener("click", (event) => {
|
||||
const data = ((event.target as Element).parentNode as HTMLElement).dataset;
|
||||
openLocker(data.lat!, data.lon!, data.openCode!, data.id!);
|
||||
request("session", {}).then((res) => {
|
||||
if (res.status == 200) {
|
||||
// logged in
|
||||
refreshPackages().then(() => {
|
||||
(document.querySelector(".package-list")! as HTMLDivElement).style.display = "block";
|
||||
});
|
||||
|
||||
// console.log(shipment);
|
||||
});
|
||||
} else {
|
||||
// not logged in
|
||||
[".login-box", ".register-box"].forEach((elementName) => {
|
||||
(document.querySelector(elementName)! as HTMLDivElement).style.display = "block";
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
|
|
@ -1,2 +1,11 @@
|
|||
// TODO: only import necessary styles
|
||||
@import "../node_modules/bulma/bulma.sass";
|
||||
|
||||
.login-box,
|
||||
.register-box,
|
||||
.sms-box,
|
||||
.error-box,
|
||||
.areyousure-box,
|
||||
.package-list {
|
||||
display: none;
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>OCW</title>
|
||||
<link rel="stylesheet" href="assets/style.css" />
|
||||
<script src="assets/index.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
|
|
Loading…
Reference in New Issue