Added command support
parent
dc6120abb1
commit
7c78c5572f
7
chat.css
7
chat.css
|
@ -1,9 +1,14 @@
|
||||||
html {
|
html {
|
||||||
background: #F7A8B8;
|
background: #F7A8B8;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-family: "Lucida Console", "Courier New", monospace;
|
font-family: "Linotte", "Lucida Console", monospace;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@font-face {
|
||||||
|
font-family: Linotte;
|
||||||
|
src: url(LinotteRegular.otf);
|
||||||
|
}
|
||||||
|
|
||||||
form {
|
form {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
overflow:hidden;
|
overflow:hidden;
|
||||||
|
|
65
chat.js
65
chat.js
|
@ -27,7 +27,7 @@ form.addEventListener("submit", async function (event) {
|
||||||
localStorage.removeItem('username')
|
localStorage.removeItem('username')
|
||||||
form.reset()
|
form.reset()
|
||||||
}
|
}
|
||||||
|
return formMessage;
|
||||||
})
|
})
|
||||||
|
|
||||||
//SEND MESSAGE FETCH FUNCTION
|
//SEND MESSAGE FETCH FUNCTION
|
||||||
|
@ -42,6 +42,7 @@ async function sendMessage() {
|
||||||
body: JSON.stringify(sendMessageInfo),
|
body: JSON.stringify(sendMessageInfo),
|
||||||
})
|
})
|
||||||
form.reset()
|
form.reset()
|
||||||
|
modCommand()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -55,7 +56,17 @@ async function fetchMessages() {
|
||||||
document.getElementById("chatbox").innerHTML = ""
|
document.getElementById("chatbox").innerHTML = ""
|
||||||
|
|
||||||
for (const message of recievedMessages) {
|
for (const message of recievedMessages) {
|
||||||
printText(message.user.bold().toString() + ": " + message.body.toString());
|
|
||||||
|
let leftBracket = '('
|
||||||
|
let rightBracket = ')'
|
||||||
|
let space = ' '
|
||||||
|
|
||||||
|
if (message.pronouns === '' || message.pronouns === 'none' || message.pronouns === null) {
|
||||||
|
leftBracket = ''
|
||||||
|
rightBracket = ''
|
||||||
|
space = ''
|
||||||
|
}
|
||||||
|
printText(message.user.bold().toString() + space + leftBracket.small() + message.pronouns.small().toString() + rightBracket.small() + ": " + message.body.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -90,12 +101,48 @@ function loggedIn() {
|
||||||
|
|
||||||
loggedIn()
|
loggedIn()
|
||||||
|
|
||||||
|
//MODERATION
|
||||||
|
|
||||||
|
async function modCommand() {
|
||||||
|
let action = ''
|
||||||
|
let target = ''
|
||||||
|
|
||||||
|
if (formMessage.startsWith('/ban')) {
|
||||||
|
action = "Ban"
|
||||||
|
target = formMessage.replace('/ban ', '')
|
||||||
|
sendCommand()
|
||||||
|
} else if (formMessage.startsWith('/kick')) {
|
||||||
|
action = "Kick"
|
||||||
|
target = formMessage.replace('/kick ', '')
|
||||||
|
sendCommand()
|
||||||
|
} else if (formMessage.startsWith('/promote')) {
|
||||||
|
action = "Promote"
|
||||||
|
target = formMessage.replace('/promote ', '')
|
||||||
|
sendCommand()
|
||||||
|
} else if (formMessage.startsWith('/demote')) {
|
||||||
|
action = "Demote"
|
||||||
|
target = formMessage.replace('/demote ', '')
|
||||||
|
sendCommand()
|
||||||
|
} else {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
async function sendCommand() {
|
||||||
|
let sendCommand = { "name": username, "action": action, "target": target }
|
||||||
|
const response = await fetch('/api/mod/', {
|
||||||
|
method: 'POST',
|
||||||
|
headers: {
|
||||||
|
'Content-Type': 'application/json',
|
||||||
|
},
|
||||||
|
body: JSON.stringify(sendCommand),
|
||||||
|
});
|
||||||
|
if (response.status === 'ok') {
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
printText('Error Issuing Command. Are you an Admin or Mod?')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//REVIECE USERS PRONOUNS
|
|
||||||
|
|
||||||
async function getPronouns() {
|
|
||||||
const response = await fetch(`api/users/${username}/`);
|
|
||||||
const data = await response.json();
|
|
||||||
pronouns = data.pronouns
|
|
||||||
return pronouns;
|
|
||||||
}
|
|
Loading…
Reference in New Issue