-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvoter.js
60 lines (32 loc) · 1001 Bytes
/
voter.js
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
const fs = require("fs");
var event = require("events");
exports.voter = class Voter {
constructor(idNumber = "", names) {
this.idNumber = idNumber;
this.names = names;
}
voted() {
//return true or false if user voted
}
exists() {
//returns true if user exists and false if not
return fs.existsSync(this.names + ".txt");
}
registerVoter() {
//registers new voter
fs.writeFileSync(this.names + ".txt", this.getVoterInformation());
fs.writeFileSync("voters_list.txt", this.names + " just registered. \n", { "encoding": "utf-8", "flag": "a+" });
}
votedFor() {
//returns name of political party voted for
}
updateLogs() {
console.log(JSON.stringify(this.eventEmitter));
}
getVoterInformation() {
return `Names: ${this.names} \n ID Number: ${this.idNumber}`;
}
deleteVoter() {
fs.unlinkSync(`${this.names}.txt`);
}
}