aboutsummaryrefslogtreecommitdiff
path: root/src/guest.mjs
diff options
context:
space:
mode:
authorKaran Jayachandra <karan.jayachandra@nxp.com>2025-11-14 14:30:38 +0100
committerKaran Jayachandra <karan.jayachandra@nxp.com>2025-11-14 14:30:38 +0100
commit51cf65e4d3e928a37b542acfb3de439c42907a9f (patch)
treea403872f059a6abc374a1f4051db7fd85e79a20e /src/guest.mjs
parent8a05236fea86f0a9214798193c652b1b09674565 (diff)
Added the guests section functionality
Diffstat (limited to 'src/guest.mjs')
-rw-r--r--src/guest.mjs31
1 files changed, 19 insertions, 12 deletions
diff --git a/src/guest.mjs b/src/guest.mjs
index ba9e8cc..c82d115 100644
--- a/src/guest.mjs
+++ b/src/guest.mjs
@@ -1,11 +1,22 @@
import { Manager } from "./utils.mjs";
export class Guest {
- constructor(id, name, level, status, totalPlayed) {
+ maxGuestCount = 12;
+ categoryCount = 3;
+
+ categories = {
+ 0: { description: "Beginner", level: 1 },
+ 1: { description: "Novice", level: 3 },
+ 2: { description: "Intermediate", level: 6 },
+ };
+
+ constructor(id, status, totalPlayed) {
this.id = id;
this.status = typeof status !== "undefined" ? status : false;
- this.name = name;
- this.level = typeof level !== "undefined" ? level : 1;
+ const categoryId = Math.floor(id / (12 / this.categoryCount));
+ const guestIdentifier = (id % (12 / this.categoryCount)) + 1;
+ this.name = this.categories[categoryId].description + " " + guestIdentifier;
+ this.level = this.categories[categoryId].level;
this.totalPlayed = typeof totalPlayed !== "undefined" ? status : 0;
}
toggle() {
@@ -19,7 +30,7 @@ export class Guest {
render() {
let color = this.status ? "is-success" : "is-danger";
let type = `class="button is-medium ${color}"`;
- return `<button id=${"regular_" + this.id} ${type}>${this.name}</button>`;
+ return `<button id=${"guest_" + this.id} ${type}>${this.name}</button>`;
}
}
@@ -35,21 +46,17 @@ export class GuestManager extends Manager {
}
for (let i = 0; i < data.length; i++) {
let id = Number(data[i].id);
- let name = data[i].name;
- let level = data[i].level;
let status = data[i].status;
let totalPlayed = data[i].totalPlayed;
- this.listData.push(new Player(id, name, level, status, totalPlayed));
+ this.listData.push(new Guest(id, status, totalPlayed));
}
console.log("Loaded " + this.listData.length + " players.");
this.render();
}
generate() {
console.log("Generating guest data.");
- let maxPlayerCount = 12;
- for (let i = 0; i < maxPlayerCount; i++) {
- let level = i < 3 ? 1 : ( i < 6 ? 3 : 7);
- let p = new Player(i, "Player " + i, level, false, 0);
+ for (let i = 0; i < new Guest(0, false).maxGuestCount; i++) {
+ let p = new Guest(i, false, 0);
this.listData.push(p);
}
console.log("Generated data for " + this.listData.length + " guest");
@@ -66,4 +73,4 @@ export class GuestManager extends Manager {
});
return players;
}
-} \ No newline at end of file
+}