aboutsummaryrefslogtreecommitdiff
path: root/src/court.mjs
blob: d85f05e7a0bcdf2119ba6e556696d6cf1f2c157a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import { Court } from "./data";
import { Manager } from "./utils.mjs";

export class CourtManager extends Manager {
  maxCourtCount = 12;

  constructor() {
    super();
    console.log("Loading court data.");
    let tempCourt = new Court();
    let data = JSON.parse(localStorage.getItem(tempCourt.description));
    if (data === null || data.length != this.maxCourtCount) {
      this.generate();
      return;
    }
    for (let i = 0; i < this.maxCourtCount; i++) {
      let id = Number(data[i].id);
      let status = Boolean(Number(data[i].status));
      this.data.push(new Court(id, status));
    }
    console.log("Loaded " + this.data.length + " courts.");
    this.render();
  }
  generate() {
    for (let i = 0; i < this.maxCourtCount; i++) {
      this.data.push(new Court(i, true));
    }
    console.log("Generated data for " + this.data.length + " courts");
    this.store();
    this.render();
  }
}