blob: 7fec352629671dfb71aebaa125a664047dd21eae (
plain)
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
|
const sessions = new Map()
class Session {
constructor() {}
Create() {
const object = {
result: '',
characters: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
}
for (let i = 0; i < object.characters.length; i++) object.result += object.characters.charAt(Math.floor(Math.random() * object.characters.length))
sessions.set(object.result, Date.now() + (1000 * 60 * 60))
return object.result
}
Exists(x) {
if (sessions.has(x)) {
sessions.set(x, Date.now() + (1000 * 60 * 60))
return true
} else {
return false
}
}
Expired() {sessions.forEach((value, key) => {if (Date.now() > value) sessions.delete(key)})}
GetSessions() {
return sessions
}
}
module.exports = () => {return new Session()}
|