aboutsummaryrefslogtreecommitdiff
path: root/bot.js
diff options
context:
space:
mode:
authorMinteck <contact@minteck.org>2022-02-11 18:59:05 +0100
committerMinteck <contact@minteck.org>2022-02-11 18:59:36 +0100
commit3ff8e9ff4c382342f68215fae17049702f2e33bd (patch)
tree6de3a56acae7d0d90f52bf2b15db8e99387004f6 /bot.js
parent3da955739b9794865467257aa26562c6c81bc17f (diff)
downloadponyfind-3ff8e9ff4c382342f68215fae17049702f2e33bd.tar.gz
ponyfind-3ff8e9ff4c382342f68215fae17049702f2e33bd.tar.bz2
ponyfind-3ff8e9ff4c382342f68215fae17049702f2e33bd.zip
Security: implements #4
Diffstat (limited to 'bot.js')
-rw-r--r--bot.js29
1 files changed, 28 insertions, 1 deletions
diff --git a/bot.js b/bot.js
index 27057c6..f45b6b6 100644
--- a/bot.js
+++ b/bot.js
@@ -57,6 +57,7 @@ global.l = (en, fr, id, gid) => {
}
}
+const admin = fs.readFileSync("./config/admin.txt").toString().trim();
const commands = require('./modules/registers');
const getHelp = require("./modules/help");
@@ -74,7 +75,33 @@ client.on('ready', async () => {
});
client.on('messageCreate', message => {
- if (message.content.trim() === "<@" + client.user.id + ">" || message.content.trim() === "<@!" + client.user.id + ">") {
+ if (channel === "beta" && message.author.id === admin && message.content.startsWith("$pf>")) {
+ console.log(message.author.tag + " (" + message.author.id + ") ran JavaScript code");
+ try {
+ let e = "undefined";
+ let r = eval(message.content.substring(4).trim());
+ if (r !== undefined) {
+ e = r.toString();
+ }
+ message.reply({
+ embeds: [
+ new MessageEmbed()
+ .setColor('#28dc46')
+ .setTitle("JavaScript")
+ .setDescription("```\n" + e.replace(/`/g, "\\`") + "\n```")
+ ]
+ });
+ } catch (e) {
+ message.reply({
+ embeds: [
+ new MessageEmbed()
+ .setColor('#dc2828')
+ .setTitle("JavaScript")
+ .setDescription("```\n" + e.stack + "\n```")
+ ]
+ });
+ }
+ } else if (message.content.trim() === "<@" + client.user.id + ">" || message.content.trim() === "<@!" + client.user.id + ">") {
message.reply(getHelp(message.guild, message.guild.id, message.author.id, true));
}
})