-
Notifications
You must be signed in to change notification settings - Fork 2
/
account.js
76 lines (66 loc) · 2.31 KB
/
account.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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
"use strict";
const badgeType = {
Admin: 0,
Based: 1,
WellKnown: 2,
Verified: 3,
Original: 4,
New: 5
}
const ratingType = {
Approve: 0,
Veto: 1,
Undo: 2,
}
function getBadgeInfo(badge) {
switch (badge) {
case badgeType.Admin:
return "This person has the special role of ensuring things don't get too out of hand! Admins keep subliminal as the #1 spot for poems."
case badgeType.Based:
return "This person skirts the edge, either by pushing the limits of content here, or exploring places in creativity that others may fear to follow."
case badgeType.New:
return "This person recently made an account on subliminal, say hello!"
case badgeType.Verified:
return "This person has been verified to be who they claim they are (no imposters here)!"
case badgeType.WellKnown:
return "This person is certainly known for something, and is well established here because of it!"
case badgeType.Original:
return "This person is a true OG of subliminal, back in the days of scribbling poems on scraps of paper during free time, and the old plaintext site."
}
}
async function getAccountData() {
const res = await fetch(serverBaseAddress + "/accounts/me", {
method: "POST",
headers: { 'Content-Type': 'application/json' }
})
if (!res.ok) {
return null
}
const accountData = await res.json()
return accountData
}
async function getPublicProfile(accountId) {
let profile = null
await fetch(serverBaseAddress + "/profiles/" + accountId, {
method: "GET",
headers: { 'Content-Type': 'application/json' },
})
.then((res) => res.json())
.then((profileObject) => profile = profileObject)
return profile
}
async function isLoggedIn() {
if (sessionStorage.accountToken) {
return true
}
let response = await fetch(serverBaseAddress + "/auth/signin/token", {
method: "POST",
headers: {'Content-Type': 'application/json'}
})
return response.ok
}
async function signout() {
window.location.reload(true)
}
console.log("%cAccount credentials may be held in browser storage, a thing that can be acessed by putting code in this console! If someone tells you to put something here, there is a high chance that you may get hacked!", "background: red; color: yellow; font-size: large")
console.log("%cTL;DR: Never put anything you do not understand here. Uncool things may happen.", "color: blue; font-size: x-large")