Newer
Older
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
33
34
35
36
37
38
39
// Imports
import * as Auth from "/services/auth/auth.js";
import * as Election from "/components/management/election.js";
import * as Areas from "/components/management/area.js";
import * as Sections from "/components/management/section.js";
import * as Desks from "/components/management/desk.js";
// DOM elements
// local variables
let current_user;
export async function mount(where) {
const genericElectionComponent = new GenericElection();
await genericElectionComponent.mount(where);
}
class GenericElection {
constructor() {}
async mount(where) {
const mountpoint = where;
document.getElementById(mountpoint).innerHTML = /* HTML */ `
<div class="columns">
<div class="column">
<div id="election" class="card"></div>
</div>
<div class="column">
<div id="areas" class="card"></div>
</div>
<div class="column">
<div id="sections" class="card"></div>
</div>
<div class="column">
<div id="desks" class="card"></div>
</div>
</div>
<div class="modal" id="election-modal"></div>
<div class="modal" id="election-clone-modal"></div>
<div class="modal" id="area-modal"></div>
<div class="modal" id="section-modal"></div>
<div class="modal" id="desk-modal"></div>
`;
current_user = await Auth.GetUser();
this.electionHandler = await Election.mount("election", this);
this.areaHandler = await Areas.mount("areas", this);
this.sectionHandler = await Sections.mount("sections", this);
this.deskHandler = await Desks.mount("desks", this);
}
}