aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorame <[email protected]>2024-06-11 22:41:39 -0500
committerame <[email protected]>2024-06-11 22:41:39 -0500
commitab7afd44bb08f1ac0ac5e236d8f179efdde844bc (patch)
tree2b0bdd99542d7434654190781b364dbf0e0090c8
parent8091667711d230a8dc76196a97f17452baf16372 (diff)
persistant stuff
-rw-r--r--.gitignore3
-rw-r--r--.node-persist/interaction/0fd9de47bbda5b46e310c4ac6a4b03d165
-rw-r--r--.node-persist/interaction/118629fe60e0aecc0b12d4700a2550ff65
-rw-r--r--.node-persist/interaction/1a1f80a9fe8a70f83609f90478223bd265
-rw-r--r--.node-persist/interaction/1aa8147f968509784eaa898a3262454765
-rw-r--r--.node-persist/interaction/336375a2bb8e10dda1af37207a1a897b65
-rw-r--r--.node-persist/interaction/337222fa4819a5d01795cdfbdbb6f70065
-rw-r--r--.node-persist/interaction/3cb5a5b393ebf44f8a674d85591d689865
-rw-r--r--.node-persist/interaction/3da57cd84b2f846c1ab822a1e8c3c7c665
-rw-r--r--.node-persist/interaction/5f1a73e22b1b157e5c27c0d2e8a218a665
-rw-r--r--.node-persist/interaction/761d31a64180175a10ad23730e49f43865
-rw-r--r--.node-persist/interaction/81ea7d31ff55b098746e1c81986ddab765
-rw-r--r--.node-persist/interaction/936f0425a1e56370bece9fbe4369372965
-rw-r--r--.node-persist/interaction/93efb0c2a62eae647d4f74eb15265e2465
-rw-r--r--.node-persist/interaction/9a8a7e8a0e82a91f3e546f295d17685f65
-rw-r--r--.node-persist/interaction/b0d05c3a09dc6df28ac0653d8ed2445c65
-rw-r--r--.node-persist/interaction/b32d592dd8e7c0817a82cafb59d70c3265
-rw-r--r--.node-persist/interaction/c6443aa82f0dfff9995c4a4678827adb65
-rw-r--r--.node-persist/interaction/cca7ef61978194fafa4f0e23f7332f8a65
-rw-r--r--.node-persist/interaction/d3a8a42736324bab3a7734c867d43aaf65
-rw-r--r--.node-persist/interaction/d766b81f862d8f98586b260e86bbe26c65
-rw-r--r--.node-persist/interaction/e070f33a7cddc72064f9f41b39acec6765
-rw-r--r--.node-persist/interaction/e8920928beb408315d870affaa0bfb1a65
-rw-r--r--.node-persist/interaction/ec2d1dc7c55aac3318cb19222305460965
-rw-r--r--.node-persist/interaction/eec0a4e443fc14668517a6e3d8ca455d65
-rw-r--r--.node-persist/interaction/f4eb6e12df2bc41f8f7f0cc789ca906e65
-rw-r--r--commands/mod/confirm.js142
-rw-r--r--events/interaction.js26
-rw-r--r--events/ready.js4
-rw-r--r--index.js272
-rw-r--r--package.json2
-rw-r--r--pnpm-lock.yaml70
-rw-r--r--src/interaction-preserve.js18
-rw-r--r--src/settings.js3
34 files changed, 2024 insertions, 141 deletions
diff --git a/.gitignore b/.gitignore
index f02c2e7..f753f6f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -71,4 +71,5 @@ db/*
#aaaaand any client secrets
.env
-log \ No newline at end of file
+log
+.node-persist
diff --git a/.node-persist/interaction/0fd9de47bbda5b46e310c4ac6a4b03d1 b/.node-persist/interaction/0fd9de47bbda5b46e310c4ac6a4b03d1
new file mode 100644
index 0000000..f5301b2
--- /dev/null
+++ b/.node-persist/interaction/0fd9de47bbda5b46e310c4ac6a4b03d1
@@ -0,0 +1,65 @@
+{"key":"1247898267921154143","value":{"data":{"user_id":"722022320683876416","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1247898267921154143","createdTimestamp":1717592531901,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F722022320683876416\u002F5074c3d9768f487c6712cd74af4c54da.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FHPPrWuk1QW6GyU4LXIgzS2tyUhoySkPnrSJFWYXbPa0\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F722022320683876416\u002F5074c3d9768f487c6712cd74af4c54da.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!722022320683876416\u003E","name":"User:","inline":true},{"value":"Sending NSFW of Minors","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717592611796,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","567337992122007552"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["814558111234654258","833027060665417769","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1247898267921154143","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1247898260820066404","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1699858099663,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":1717678881910,"userId":"722022320683876416","avatar":null,"flags":10,"displayName":"Ovi","roles":["1082346734576996412","818194523083112509","803662846709858305","1097025722746413137","1097025543020499076","749218500463165511","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F722022320683876416\u002F5074c3d9768f487c6712cd74af4c54da.webp"},"reason":"Sending NSFW of Minors","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F722022320683876416\u002F5074c3d9768f487c6712cd74af4c54da.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","inline":true},{"name":"User:","value":"\u003C@!722022320683876416\u003E","inline":true},{"name":"Ban Reason:","value":"Sending NSFW of Minors"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/118629fe60e0aecc0b12d4700a2550ff b/.node-persist/interaction/118629fe60e0aecc0b12d4700a2550ff
new file mode 100644
index 0000000..9277d07
--- /dev/null
+++ b/.node-persist/interaction/118629fe60e0aecc0b12d4700a2550ff
@@ -0,0 +1,65 @@
+{"key":"1247994202860814469","value":{"data":{"user_id":"1063209304804565022","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"567337992122007552","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1247994202860814469","createdTimestamp":1717615404573,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1063209304804565022\u002F7563dd7a40b5b34c9b19db4dab8591aa.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FjFRZvCPZr7ForGcmQCv1dq3ioyMeDYInc3VH05D3XX4\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1063209304804565022\u002F7563dd7a40b5b34c9b19db4dab8591aa.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@567337992122007552\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1063209304804565022\u003E","name":"User:","inline":true},{"value":"scam","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717616365398,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["567337992122007552","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["833027060665417769","814558111234654258","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1247994202860814469","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1247994195772178512","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"567337992122007552","member":"567337992122007552","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789380967"),"locale":"en-GB","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"567337992122007552"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717609160058,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1063209304804565022","avatar":null,"flags":42,"displayName":"Digital Hayden","roles":["749218503856488518","803662846709858305","820544781590462505","1019871422669131796","1097025722746413137","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1063209304804565022\u002F7563dd7a40b5b34c9b19db4dab8591aa.webp"},"reason":"scam","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1063209304804565022\u002F7563dd7a40b5b34c9b19db4dab8591aa.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@567337992122007552\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!1063209304804565022\u003E","inline":true},{"name":"Ban Reason:","value":"scam"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/1a1f80a9fe8a70f83609f90478223bd2 b/.node-persist/interaction/1a1f80a9fe8a70f83609f90478223bd2
new file mode 100644
index 0000000..9a82414
--- /dev/null
+++ b/.node-persist/interaction/1a1f80a9fe8a70f83609f90478223bd2
@@ -0,0 +1,65 @@
+{"key":"1248097957417324560","value":{"data":{"user_id":"504356278718562314","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248097957417324560","createdTimestamp":1717640141587,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F504356278718562314\u002F3c3101fd9a8d7c241b7f48d449d6e317.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FyORVjlJtVet2f9XPz8bvOYT59XGvzm_DYV-RUeFpzYc\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F504356278718562314\u002F3c3101fd9a8d7c241b7f48d449d6e317.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!504356278718562314\u003E","name":"User:","inline":true},{"value":"Unusual DM Activity","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717642300123,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["833027060665417769","814558111234654258","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248097957417324560","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248097951352623195","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1716920549394,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"504356278718562314","avatar":null,"flags":106,"displayName":"Ava Morales","roles":["749218789962285086","803662918255640607","818194523083112509","820544781590462505","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F504356278718562314\u002F3c3101fd9a8d7c241b7f48d449d6e317.webp"},"reason":"Unusual DM Activity","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F504356278718562314\u002F3c3101fd9a8d7c241b7f48d449d6e317.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!504356278718562314\u003E","inline":true},{"name":"Ban Reason:","value":"Unusual DM Activity"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/1aa8147f968509784eaa898a32624547 b/.node-persist/interaction/1aa8147f968509784eaa898a32624547
new file mode 100644
index 0000000..9cb4578
--- /dev/null
+++ b/.node-persist/interaction/1aa8147f968509784eaa898a32624547
@@ -0,0 +1,65 @@
+{"key":"1248098054431707211","value":{"data":{"user_id":"1244654653535293522","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248098054431707211","createdTimestamp":1717640164717,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1244654653535293522\u002F92bae157d90bbfb8e9fe03e69ea30566.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FaZ9AwChpypQs9Q3NXw0LvGRgI6pgZclq1mk8dgLZHZc\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1244654653535293522\u002F92bae157d90bbfb8e9fe03e69ea30566.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1244654653535293522\u003E","name":"User:","inline":true},{"value":"Unusual DM Activity","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717642301524,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["486957006628847626","833027060665417769","586781513471885323","814558111234654258","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248098054431707211","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248098048362414182","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717525528582,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1244654653535293522","avatar":null,"flags":106,"displayName":"Wallet","roles":["749218503856488518","803662846709858305","818194523083112509","1097025543020499076","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1244654653535293522\u002F92bae157d90bbfb8e9fe03e69ea30566.webp"},"reason":"Unusual DM Activity","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1244654653535293522\u002F92bae157d90bbfb8e9fe03e69ea30566.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!1244654653535293522\u003E","inline":true},{"name":"Ban Reason:","value":"Unusual DM Activity"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/336375a2bb8e10dda1af37207a1a897b b/.node-persist/interaction/336375a2bb8e10dda1af37207a1a897b
new file mode 100644
index 0000000..41a21e2
--- /dev/null
+++ b/.node-persist/interaction/336375a2bb8e10dda1af37207a1a897b
@@ -0,0 +1,65 @@
+{"key":"1247791231476568078","value":{"data":{"user_id":"1191416458727657565","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1247791231476568078","createdTimestamp":1717567012424,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1191416458727657565\u002Fa50415a6bc6a559a097f3169b83aa235.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FxHCfe_OwNMwYKKXRYzQDWDKjxTzNmfm5zO3kxuUntHg\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1191416458727657565\u002Fa50415a6bc6a559a097f3169b83aa235.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1191416458727657565\u003E","name":"User:","inline":true},{"value":"Troll","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717567018294,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","567337992122007552"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["980379693435998258","814558111234654258","586781513471885323","486957006628847626","833027060665417769","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1247791230805606450","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1247791226124767302","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717565263138,"premiumSinceTimestamp":null,"nickname":"Floramora","pending":false,"communicationDisabledUntilTimestamp":1717570596097,"userId":"1191416458727657565","avatar":null,"flags":10,"displayName":"Floramora","roles":["820544781590462505","818194523083112509","803662918255640607","1051419794672455700","1126755158353793034","749218500463165511","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1191416458727657565\u002Fa50415a6bc6a559a097f3169b83aa235.webp"},"reason":"Troll","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1191416458727657565\u002Fa50415a6bc6a559a097f3169b83aa235.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","inline":true},{"name":"User:","value":"\u003C@!1191416458727657565\u003E","inline":true},{"name":"Ban Reason:","value":"Troll"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/337222fa4819a5d01795cdfbdbb6f700 b/.node-persist/interaction/337222fa4819a5d01795cdfbdbb6f700
new file mode 100644
index 0000000..4861426
--- /dev/null
+++ b/.node-persist/interaction/337222fa4819a5d01795cdfbdbb6f700
@@ -0,0 +1,65 @@
+{"key":"1247759709029535810","value":{"data":{"user_id":"1176711530327310387","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1247759709029535810","createdTimestamp":1717559496887,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1176711530327310387\u002F41aedac670dc3bb641404f6b4d99f619.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FPG4sTxGQYfz5hhk4BeaPj7X6_N3vBNPDpnjIrcu8cJ8\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1176711530327310387\u002F41aedac670dc3bb641404f6b4d99f619.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@221467280821714944\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1176711530327310387\u003E","name":"User:","inline":true},{"value":"Sending NSFW Links of minors","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717559609884,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","221467280821714944"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["833027060665417769","814558111234654258","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1247759709029535810","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1247759703019225171","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1714639844054,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1176711530327310387","avatar":null,"flags":42,"displayName":"ray","roles":["1082346734576996412","803662846709858305","1097025543020499076","749218500463165511","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1176711530327310387\u002F41aedac670dc3bb641404f6b4d99f619.webp"},"reason":"Sending NSFW Links of minors","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1176711530327310387\u002F41aedac670dc3bb641404f6b4d99f619.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@221467280821714944\u003E","inline":true},{"name":"User:","value":"\u003C@!1176711530327310387\u003E","inline":true},{"name":"Ban Reason:","value":"Sending NSFW Links of minors"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/3cb5a5b393ebf44f8a674d85591d6898 b/.node-persist/interaction/3cb5a5b393ebf44f8a674d85591d6898
new file mode 100644
index 0000000..34059f4
--- /dev/null
+++ b/.node-persist/interaction/3cb5a5b393ebf44f8a674d85591d6898
@@ -0,0 +1,65 @@
+{"key":"1249951001927090199","value":{"data":{"user_id":"846500477059072041","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1249951001927090199","createdTimestamp":1718081941826,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F846500477059072041\u002F4f0527fd5f527f236ebfdeea3f508feb.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FQQaNKrWHiV3f9p-nCjs9eGEJHyjuzhnqxXZsJhaOTXo\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F846500477059072041\u002F4f0527fd5f527f236ebfdeea3f508feb.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!846500477059072041\u003E","name":"User:","inline":true},{"value":"Unusual DM Actiivty","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1718082233580,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["833027060665417769","814558111234654258","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1249819811060514981","1249825496045195358","1249950911120412747","1249951001927090199"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1249951001927090199","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1249950995824246806","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1708366805475,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"846500477059072041","avatar":null,"flags":106,"displayName":"lily_.10","roles":["1082346734576996412","818194523083112509","803662918255640607","749218789962285086","1097025722746413137","1159868710010507294","1051419794672455700","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F846500477059072041\u002F4f0527fd5f527f236ebfdeea3f508feb.webp"},"reason":"Unusual DM Actiivty","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F846500477059072041\u002F4f0527fd5f527f236ebfdeea3f508feb.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!846500477059072041\u003E","inline":true},{"name":"Ban Reason:","value":"Unusual DM Actiivty"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/3da57cd84b2f846c1ab822a1e8c3c7c6 b/.node-persist/interaction/3da57cd84b2f846c1ab822a1e8c3c7c6
new file mode 100644
index 0000000..5e32a55
--- /dev/null
+++ b/.node-persist/interaction/3da57cd84b2f846c1ab822a1e8c3c7c6
@@ -0,0 +1,65 @@
+{"key":"1249950911120412747","value":{"data":{"user_id":"1143900979117424741","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1249950911120412747","createdTimestamp":1718081920176,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1143900979117424741\u002Fad47918a9e88836631b5177c1a52ebd3.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FB9Yf_4XydP9mFKVQObe_zUslA1cpXss0wNJTXdfMWG0\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1143900979117424741\u002Fad47918a9e88836631b5177c1a52ebd3.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1143900979117424741\u003E","name":"User:","inline":true},{"value":"Unusual DM Activity","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1718082232058,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["814558111234654258","833027060665417769","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1249819811060514981","1249825496045195358","1249950911120412747"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1249950911120412747","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1249950904690409492","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1712183554846,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1143900979117424741","avatar":null,"flags":42,"displayName":"Benjamin martin","roles":["820544781590462505","1097025722746413137","1019871422669131796","1126755158353793034","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1143900979117424741\u002Fad47918a9e88836631b5177c1a52ebd3.webp"},"reason":"Unusual DM Activity","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1143900979117424741\u002Fad47918a9e88836631b5177c1a52ebd3.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!1143900979117424741\u003E","inline":true},{"name":"Ban Reason:","value":"Unusual DM Activity"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/5f1a73e22b1b157e5c27c0d2e8a218a6 b/.node-persist/interaction/5f1a73e22b1b157e5c27c0d2e8a218a6
new file mode 100644
index 0000000..8031095
--- /dev/null
+++ b/.node-persist/interaction/5f1a73e22b1b157e5c27c0d2e8a218a6
@@ -0,0 +1,65 @@
+{"key":"1248665332881821858","value":{"data":{"user_id":"1239653325335695432","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248665332881821858","createdTimestamp":1717775414439,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1239653325335695432\u002F33f82a48cc86bead28533afcddc29e3f.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002F1a-jFrU_Nw2T3ZJ0XMwgJT4pmFjGy0Lw9jAk4SHHpqo\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1239653325335695432\u002F33f82a48cc86bead28533afcddc29e3f.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@256790428295102465\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1239653325335695432\u003E","name":"User:","inline":true},{"value":"Scamming and self promotion in wrong channel","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717776516236,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","256790428295102465"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["486957006628847626","833027060665417769","586781513471885323","814558111234654258","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782","1248323138475790442","1248417933374394431","1248613317065310321","1248665332881821858"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248665332881821858","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248665324992069764","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717775315209,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1239653325335695432","avatar":null,"flags":42,"displayName":"Raymond johnston","roles":["749218789962285086","803662846709858305","1097025543020499076","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1239653325335695432\u002F33f82a48cc86bead28533afcddc29e3f.webp"},"reason":"Scamming and self promotion in wrong channel","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1239653325335695432\u002F33f82a48cc86bead28533afcddc29e3f.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@256790428295102465\u003E","inline":true},{"name":"User:","value":"\u003C@!1239653325335695432\u003E","inline":true},{"name":"Ban Reason:","value":"Scamming and self promotion in wrong channel"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/761d31a64180175a10ad23730e49f438 b/.node-persist/interaction/761d31a64180175a10ad23730e49f438
new file mode 100644
index 0000000..3c5557a
--- /dev/null
+++ b/.node-persist/interaction/761d31a64180175a10ad23730e49f438
@@ -0,0 +1,65 @@
+{"key":"1250185493077950518","value":{"data":{"user_id":"1242519889957228587","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"567337992122007552","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1250185493077950518","createdTimestamp":1718137848873,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":256,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Fembed\u002Favatars\u002F5.png","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FE61lHGLVt4b1Izdu7X0KJRGmYDpyFMvs9buCRCdKcxY\u002Fhttps\u002Fcdn.discordapp.com\u002Fembed\u002Favatars\u002F5.png","height":256},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@567337992122007552\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1242519889957228587\u003E","name":"User:","inline":true},{"value":"scam","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1718138047480,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["567337992122007552","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["486957006628847626","980379693435998258","586781513471885323","814558111234654258","833027060665417769","555751551285723139"],"messages":["1250185493077950518"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1250185493077950518","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1250185481186971658","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"567337992122007552","member":"567337992122007552","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789380967"),"locale":"en-GB","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"567337992122007552"},"user":{"guildId":"486957006628847626","joinedTimestamp":1718127712898,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1242519889957228587","avatar":null,"flags":42,"displayName":"vojtech","roles":["486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Fembed\u002Favatars\u002F5.png"},"reason":"scam","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Fembed\u002Favatars\u002F5.png"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@567337992122007552\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!1242519889957228587\u003E","inline":true},{"name":"Ban Reason:","value":"scam"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/81ea7d31ff55b098746e1c81986ddab7 b/.node-persist/interaction/81ea7d31ff55b098746e1c81986ddab7
new file mode 100644
index 0000000..ff56531
--- /dev/null
+++ b/.node-persist/interaction/81ea7d31ff55b098746e1c81986ddab7
@@ -0,0 +1,65 @@
+{"key":"1248222167771119782","value":{"data":{"user_id":"708218327125852201","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"567337992122007552","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248222167771119782","createdTimestamp":1717669755643,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F708218327125852201\u002F77208c1a2173d585db3009c2ef18497c.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002F4c6UARuCZYIqYsPeNlV1091DXf7Wt7jHIvVl9HYY8z4\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F708218327125852201\u002F77208c1a2173d585db3009c2ef18497c.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@567337992122007552\u003E,\u003C@579124982215344138\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!708218327125852201\u003E","name":"User:","inline":true},{"value":"scam","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717673601225,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["567337992122007552","579124982215344138"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["980379693435998258","486957006628847626","586781513471885323","814558111234654258","833027060665417769","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248222167771119782","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248222161630396438","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"567337992122007552","member":"567337992122007552","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789380967"),"locale":"en-GB","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"567337992122007552"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717668124029,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"708218327125852201","avatar":null,"flags":10,"displayName":"Ahmad","roles":["486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F708218327125852201\u002F77208c1a2173d585db3009c2ef18497c.webp"},"reason":"scam","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F708218327125852201\u002F77208c1a2173d585db3009c2ef18497c.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@567337992122007552\u003E,\u003C@579124982215344138\u003E","inline":true},{"name":"User:","value":"\u003C@!708218327125852201\u003E","inline":true},{"name":"Ban Reason:","value":"scam"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/936f0425a1e56370bece9fbe43693729 b/.node-persist/interaction/936f0425a1e56370bece9fbe43693729
new file mode 100644
index 0000000..e8d359c
--- /dev/null
+++ b/.node-persist/interaction/936f0425a1e56370bece9fbe43693729
@@ -0,0 +1,65 @@
+{"key":"1248323138475790442","value":{"data":{"user_id":"1237118406277464246","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"567337992122007552","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248323138475790442","createdTimestamp":1717693828935,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1237118406277464246\u002Faa7a1b29b38fe364fd5fa56aa56713e8.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002F-_304eJ47Bk8J97okMbUcYVuno_bt2kS4_IBy0wmzWo\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1237118406277464246\u002Faa7a1b29b38fe364fd5fa56aa56713e8.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@567337992122007552\u003E,\u003C@579124982215344138\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1237118406277464246\u003E","name":"User:","inline":true},{"value":"troll","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717693836406,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["567337992122007552","579124982215344138"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["833027060665417769","814558111234654258","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782","1248323138475790442"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248323138475790442","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248323131823624257","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"567337992122007552","member":"567337992122007552","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789380967"),"locale":"en-GB","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"567337992122007552"},"user":{"guildId":"486957006628847626","joinedTimestamp":1715026557437,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":1717779747898,"userId":"1237118406277464246","avatar":null,"flags":10,"displayName":"Ash'kii","roles":["486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1237118406277464246\u002Faa7a1b29b38fe364fd5fa56aa56713e8.webp"},"reason":"troll","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1237118406277464246\u002Faa7a1b29b38fe364fd5fa56aa56713e8.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@567337992122007552\u003E,\u003C@579124982215344138\u003E","inline":true},{"name":"User:","value":"\u003C@!1237118406277464246\u003E","inline":true},{"name":"Ban Reason:","value":"troll"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/93efb0c2a62eae647d4f74eb15265e24 b/.node-persist/interaction/93efb0c2a62eae647d4f74eb15265e24
new file mode 100644
index 0000000..bbdf0b1
--- /dev/null
+++ b/.node-persist/interaction/93efb0c2a62eae647d4f74eb15265e24
@@ -0,0 +1,65 @@
+{"key":"1248719571863732257","value":{"data":{"user_id":"1052120093456355368","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"256790428295102465","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248719571863732257","createdTimestamp":1717788346020,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1052120093456355368\u002Fdbf52f1a1482c0c69757fa2cea9ace32.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002F1Ak6Fl0Jij8RGIsA0TdqQoHFnX6o5vtBR6kRcMv2n5o\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1052120093456355368\u002Fdbf52f1a1482c0c69757fa2cea9ace32.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@256790428295102465\u003E,\u003C@567337992122007552\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1052120093456355368\u003E","name":"User:","inline":true},{"value":"Scammer","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717788448037,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["256790428295102465","567337992122007552"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["814558111234654258","833027060665417769","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782","1248323138475790442","1248417933374394431","1248613317065310321","1248665332881821858","1248683623046185063","1248719571863732257"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248719571863732257","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248719561038106684","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"256790428295102465","member":"256790428295102465","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"256790428295102465"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717765024502,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1052120093456355368","avatar":null,"flags":42,"displayName":"Alfred","roles":["749218789962285086","803662846709858305","818194523083112509","924870780091768852","1097025543020499076","1097025722746413137","1159868710010507294","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1052120093456355368\u002Fdbf52f1a1482c0c69757fa2cea9ace32.webp"},"reason":"Scammer","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1052120093456355368\u002Fdbf52f1a1482c0c69757fa2cea9ace32.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@256790428295102465\u003E,\u003C@567337992122007552\u003E","inline":true},{"name":"User:","value":"\u003C@!1052120093456355368\u003E","inline":true},{"name":"Ban Reason:","value":"Scammer"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/9a8a7e8a0e82a91f3e546f295d17685f b/.node-persist/interaction/9a8a7e8a0e82a91f3e546f295d17685f
new file mode 100644
index 0000000..4de257b
--- /dev/null
+++ b/.node-persist/interaction/9a8a7e8a0e82a91f3e546f295d17685f
@@ -0,0 +1,65 @@
+{"key":"1248417933374394431","value":{"data":{"user_id":"1246439168762974375","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248417933374394431","createdTimestamp":1717716429800,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1246439168762974375\u002F6d0edc10eecfb3ee67b939005f1a5292.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002Ff8MBqHcPhDdX-76kJoF6qCAb8cD4rEkDmu5eBeiatLo\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1246439168762974375\u002F6d0edc10eecfb3ee67b939005f1a5292.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1246439168762974375\u003E","name":"User:","inline":true},{"value":"Unusual DM Activity\u002FDm Ads","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717720859039,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["980379693435998258","486957006628847626","586781513471885323","814558111234654258","833027060665417769","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782","1248323138475790442","1248417933374394431"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248417933374394431","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248417927741309011","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717640253206,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1246439168762974375","avatar":null,"flags":42,"displayName":"Aryan","roles":["749218789962285086","803662846709858305","820544781590462505","924870780091768852","1019871422669131796","1097025543020499076","1097025722746413137","1126755158353793034","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1246439168762974375\u002F6d0edc10eecfb3ee67b939005f1a5292.webp"},"reason":"Unusual DM Activity\u002FDm Ads","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1246439168762974375\u002F6d0edc10eecfb3ee67b939005f1a5292.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!1246439168762974375\u003E","inline":true},{"name":"Ban Reason:","value":"Unusual DM Activity\u002FDm Ads"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/b0d05c3a09dc6df28ac0653d8ed2445c b/.node-persist/interaction/b0d05c3a09dc6df28ac0653d8ed2445c
new file mode 100644
index 0000000..6d5c024
--- /dev/null
+++ b/.node-persist/interaction/b0d05c3a09dc6df28ac0653d8ed2445c
@@ -0,0 +1,65 @@
+{"key":"1248683623046185063","value":{"data":{"user_id":"1201225776238968936","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"567337992122007552","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248683623046185063","createdTimestamp":1717779775154,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1201225776238968936\u002F58d347fad48f42724c709104f5d39941.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FXk63uDMMX_KfgTuSf9HmnhtvV7xvRLUt4KEr51CYWNU\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1201225776238968936\u002F58d347fad48f42724c709104f5d39941.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@567337992122007552\u003E,\u003C@256790428295102465\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1201225776238968936\u003E","name":"User:","inline":true},{"value":"scam","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717779779718,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["567337992122007552","256790428295102465"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["980379693435998258","486957006628847626","586781513471885323","814558111234654258","833027060665417769","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782","1248323138475790442","1248417933374394431","1248613317065310321","1248665332881821858","1248683623046185063"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248683623046185063","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248683616750534728","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"567337992122007552","member":"567337992122007552","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789380967"),"locale":"en-GB","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"567337992122007552"},"user":{"guildId":"486957006628847626","joinedTimestamp":1706465363980,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1201225776238968936","avatar":null,"flags":10,"displayName":"philocalist","roles":["749218500463165511","753971741537206293","803662918255640607","818194523083112509","1051419794672455700","1082346734576996412","1159868710010507294","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1201225776238968936\u002F58d347fad48f42724c709104f5d39941.webp"},"reason":"scam","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1201225776238968936\u002F58d347fad48f42724c709104f5d39941.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@567337992122007552\u003E,\u003C@256790428295102465\u003E","inline":true},{"name":"User:","value":"\u003C@!1201225776238968936\u003E","inline":true},{"name":"Ban Reason:","value":"scam"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/b32d592dd8e7c0817a82cafb59d70c32 b/.node-persist/interaction/b32d592dd8e7c0817a82cafb59d70c32
new file mode 100644
index 0000000..16b66e6
--- /dev/null
+++ b/.node-persist/interaction/b32d592dd8e7c0817a82cafb59d70c32
@@ -0,0 +1,65 @@
+{"key":"1248613317065310321","value":{"data":{"user_id":"1178787365112782981","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248613317065310321","createdTimestamp":1717763012902,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1178787365112782981\u002Fff1417e260d657d1bb325f3160ac2a06.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FXNgmQdNyjKnNenbYFe9fowfSq6xJ8XU-64VCQGBbbKE\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1178787365112782981\u002Fff1417e260d657d1bb325f3160ac2a06.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1178787365112782981\u003E","name":"User:","inline":true},{"value":"DM Ads\u002FScam account","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717763030003,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","567337992122007552"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["486957006628847626","833027060665417769","586781513471885323","814558111234654258","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782","1248323138475790442","1248417933374394431","1248613317065310321"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248613317065310321","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248613311356997673","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717236791542,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1178787365112782981","avatar":null,"flags":42,"displayName":"EmmaLucy","roles":["803662918255640607","1097025543020499076","1159868710010507294","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1178787365112782981\u002Fff1417e260d657d1bb325f3160ac2a06.webp"},"reason":"DM Ads\u002FScam account","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1178787365112782981\u002Fff1417e260d657d1bb325f3160ac2a06.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","inline":true},{"name":"User:","value":"\u003C@!1178787365112782981\u003E","inline":true},{"name":"Ban Reason:","value":"DM Ads\u002FScam account"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/c6443aa82f0dfff9995c4a4678827adb b/.node-persist/interaction/c6443aa82f0dfff9995c4a4678827adb
new file mode 100644
index 0000000..3594e74
--- /dev/null
+++ b/.node-persist/interaction/c6443aa82f0dfff9995c4a4678827adb
@@ -0,0 +1,65 @@
+{"key":"1249819811060514981","value":{"data":{"user_id":"1239614913647870063","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"567337992122007552","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1249819811060514981","createdTimestamp":1718050663486,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1239614913647870063\u002Ff322b8781b69262444eb14d088d504ea.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002Feau3LWJCtLO5qJk5Mdu2Ewu41pOZPAxGs-CQ9A_31PU\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1239614913647870063\u002Ff322b8781b69262444eb14d088d504ea.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@567337992122007552\u003E,\u003C@256790428295102465\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1239614913647870063\u003E","name":"User:","inline":true},{"value":"dm ads","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1718050669080,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["567337992122007552","256790428295102465"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["486957006628847626","980379693435998258","586781513471885323","814558111234654258","833027060665417769","555751551285723139"],"messages":["1249819810104086633","1249819811060514981"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1249819811060514981","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1249819804660138124","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"567337992122007552","member":"567337992122007552","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789380967"),"locale":"en-GB","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"567337992122007552"},"user":{"guildId":"486957006628847626","joinedTimestamp":1718045771789,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1239614913647870063","avatar":null,"flags":106,"displayName":"sms","roles":["820544781590462505","1082346734576996412","818194523083112509","803662846709858305","749218789962285086","1097025722746413137","1019871422669131796","1126755158353793034","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1239614913647870063\u002Ff322b8781b69262444eb14d088d504ea.webp"},"reason":"dm ads","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1239614913647870063\u002Ff322b8781b69262444eb14d088d504ea.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@567337992122007552\u003E,\u003C@256790428295102465\u003E","inline":true},{"name":"User:","value":"\u003C@!1239614913647870063\u003E","inline":true},{"name":"Ban Reason:","value":"dm ads"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/cca7ef61978194fafa4f0e23f7332f8a b/.node-persist/interaction/cca7ef61978194fafa4f0e23f7332f8a
new file mode 100644
index 0000000..6407476
--- /dev/null
+++ b/.node-persist/interaction/cca7ef61978194fafa4f0e23f7332f8a
@@ -0,0 +1,65 @@
+{"key":"1249175105347649569","value":{"data":{"user_id":"382898042107461635","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"256790428295102465","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1249175105347649569","createdTimestamp":1717896953666,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F382898042107461635\u002F91f128a160d9d51a94eb657b260ce3dc.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002F7O0ORIwaqP0n07X3gL2y9Pw_8EQuxqxP1oeO_B9YS6c\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F382898042107461635\u002F91f128a160d9d51a94eb657b260ce3dc.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@256790428295102465\u003E,\u003C@579124982215344138\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!382898042107461635\u003E","name":"User:","inline":true},{"value":"Questionable crypto work posting in paid request","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717897040195,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["256790428295102465","579124982215344138"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["814558111234654258","833027060665417769","586781513471885323","486957006628847626","980379693435998258","555751551285723139"],"messages":["1249158020559011903","1249175105347649569"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1249175105347649569","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1249175096158060577","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"256790428295102465","member":"256790428295102465","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"256790428295102465"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717674616804,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"382898042107461635","avatar":null,"flags":42,"displayName":"Hellson👑","roles":["1097025543020499076","749218500463165511","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F382898042107461635\u002F91f128a160d9d51a94eb657b260ce3dc.webp"},"reason":"Questionable crypto work posting in paid request","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F382898042107461635\u002F91f128a160d9d51a94eb657b260ce3dc.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@256790428295102465\u003E,\u003C@579124982215344138\u003E","inline":true},{"name":"User:","value":"\u003C@!382898042107461635\u003E","inline":true},{"name":"Ban Reason:","value":"Questionable crypto work posting in paid request"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/d3a8a42736324bab3a7734c867d43aaf b/.node-persist/interaction/d3a8a42736324bab3a7734c867d43aaf
new file mode 100644
index 0000000..549a5be
--- /dev/null
+++ b/.node-persist/interaction/d3a8a42736324bab3a7734c867d43aaf
@@ -0,0 +1,65 @@
+{"key":"1249825496045195358","value":{"data":{"user_id":"1114980179933138964","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"567337992122007552","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1249825496045195358","createdTimestamp":1718052018892,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1114980179933138964\u002F4533bb87d4bc94c63a469a200cded19a.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FR3dhXp_jIrUftImgCPN3OSm-DaefimHHN8hL07VA3g4\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1114980179933138964\u002F4533bb87d4bc94c63a469a200cded19a.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@567337992122007552\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1114980179933138964\u003E","name":"User:","inline":true},{"value":"dm ads","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1718052593544,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["567337992122007552","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["814558111234654258","980379693435998258","586781513471885323","486957006628847626","833027060665417769","555751551285723139"],"messages":["1249819811060514981","1249825496045195358"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1249825496045195358","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1249825490156519504","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"567337992122007552","member":"567337992122007552","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789380967"),"locale":"en-GB","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"567337992122007552"},"user":{"guildId":"486957006628847626","joinedTimestamp":1690758670532,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1114980179933138964","avatar":null,"flags":42,"displayName":"Ash","roles":["803662918255640607","1097025722746413137","749218500463165511","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1114980179933138964\u002F4533bb87d4bc94c63a469a200cded19a.webp"},"reason":"dm ads","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1114980179933138964\u002F4533bb87d4bc94c63a469a200cded19a.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@567337992122007552\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!1114980179933138964\u003E","inline":true},{"name":"Ban Reason:","value":"dm ads"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/d766b81f862d8f98586b260e86bbe26c b/.node-persist/interaction/d766b81f862d8f98586b260e86bbe26c
new file mode 100644
index 0000000..7df302f
--- /dev/null
+++ b/.node-persist/interaction/d766b81f862d8f98586b260e86bbe26c
@@ -0,0 +1,65 @@
+{"key":"1249158020559011903","value":{"data":{"user_id":"1248984555902205955","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1249158020559011903","createdTimestamp":1717892880335,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1248984555902205955\u002F283dc0099eaed49c0076689adc4a61a7.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FawZ9ROiVUbVNcMPylo_fUT0CLntTtxpvmf0yt7TzG3E\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1248984555902205955\u002F283dc0099eaed49c0076689adc4a61a7.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1248984555902205955\u003E","name":"User:","inline":true},{"value":"Unusual DM Activity","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717893171344,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","567337992122007552"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["833027060665417769","486957006628847626","586781513471885323","814558111234654258","980379693435998258","555751551285723139"],"messages":["1249158020559011903"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1249158019481210903","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1249158014016028723","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717871916982,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1248984555902205955","avatar":null,"flags":106,"displayName":"Alena","roles":["486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1248984555902205955\u002F283dc0099eaed49c0076689adc4a61a7.webp"},"reason":"Unusual DM Activity","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1248984555902205955\u002F283dc0099eaed49c0076689adc4a61a7.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","inline":true},{"name":"User:","value":"\u003C@!1248984555902205955\u003E","inline":true},{"name":"Ban Reason:","value":"Unusual DM Activity"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/e070f33a7cddc72064f9f41b39acec67 b/.node-persist/interaction/e070f33a7cddc72064f9f41b39acec67
new file mode 100644
index 0000000..b99c749
--- /dev/null
+++ b/.node-persist/interaction/e070f33a7cddc72064f9f41b39acec67
@@ -0,0 +1,65 @@
+{"key":"1247759213631897623","value":{"data":{"user_id":"1173685897376567368","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1247759213631897623","createdTimestamp":1717559378775,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1173685897376567368\u002Fac93178c21802d1f6da3260aba99a952.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002Ff_Ey8lKBc-MuTkWFaSmUTb661-RbuBkBK4UZzPHQ5pY\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1173685897376567368\u002Fac93178c21802d1f6da3260aba99a952.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1173685897376567368\u003E","name":"User:","inline":true},{"value":"DM Ads and Stolen Artowrk\u002FStolen Idenity","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717559899630,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","534554607330787381"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["833027060665417769","486957006628847626","586781513471885323","814558111234654258","980379693435998258","555751551285723139"],"messages":["1247666991699988483","1247759213631897623"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1247759213631897623","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1247759207793430699","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1716835848559,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1173685897376567368","avatar":null,"flags":42,"displayName":"Hallie98","roles":["820544781590462505","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1173685897376567368\u002Fac93178c21802d1f6da3260aba99a952.webp"},"reason":"DM Ads and Stolen Artowrk\u002FStolen Idenity","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1173685897376567368\u002Fac93178c21802d1f6da3260aba99a952.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@534554607330787381\u003E","inline":true},{"name":"User:","value":"\u003C@!1173685897376567368\u003E","inline":true},{"name":"Ban Reason:","value":"DM Ads and Stolen Artowrk\u002FStolen Idenity"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/e8920928beb408315d870affaa0bfb1a b/.node-persist/interaction/e8920928beb408315d870affaa0bfb1a
new file mode 100644
index 0000000..6f503e9
--- /dev/null
+++ b/.node-persist/interaction/e8920928beb408315d870affaa0bfb1a
@@ -0,0 +1,65 @@
+{"key":"1248807634300305485","value":{"data":{"user_id":"633097202947850252","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248807634300305485","createdTimestamp":1717809341741,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F633097202947850252\u002Fccab045a3ba65e8e844db58687381852.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FOzMJwSo55BbIwjAy2mxpMcrDaBDWJbmUecD2g7xoAd8\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F633097202947850252\u002Fccab045a3ba65e8e844db58687381852.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@1056165892330893332\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!633097202947850252\u003E","name":"User:","inline":true},{"value":"Unusual DM Activity","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717810405191,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","1056165892330893332"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["980379693435998258","814558111234654258","586781513471885323","486957006628847626","833027060665417769","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782","1248323138475790442","1248417933374394431","1248613317065310321","1248665332881821858","1248683623046185063","1248719571863732257","1248807528721158178","1248807633549266974","1248807634300305485"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248807634300305485","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248807628214243348","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717181189453,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"633097202947850252","avatar":null,"flags":42,"displayName":"Angel Perry","roles":["752126346834083870","803662846709858305","818194523083112509","820544781590462505","1051419794672455700","1082346734576996412","1126755158353793034","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F633097202947850252\u002Fccab045a3ba65e8e844db58687381852.webp"},"reason":"Unusual DM Activity","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F633097202947850252\u002Fccab045a3ba65e8e844db58687381852.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@1056165892330893332\u003E","inline":true},{"name":"User:","value":"\u003C@!633097202947850252\u003E","inline":true},{"name":"Ban Reason:","value":"Unusual DM Activity"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/ec2d1dc7c55aac3318cb192223054609 b/.node-persist/interaction/ec2d1dc7c55aac3318cb192223054609
new file mode 100644
index 0000000..7f2b63f
--- /dev/null
+++ b/.node-persist/interaction/ec2d1dc7c55aac3318cb192223054609
@@ -0,0 +1,65 @@
+{"key":"1247666991699988483","value":{"data":{"user_id":"1212797096374050916","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1247666991699988483","createdTimestamp":1717537391353,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1212797096374050916\u002F04cb279661fa556af17f87615de32066.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002Fdd4BTJYNaJVsFvnCDfNYnH9jnIzH6sT7cUQaziOFgPc\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1212797096374050916\u002F04cb279661fa556af17f87615de32066.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1212797096374050916\u003E","name":"User:","inline":true},{"value":"Stolen Artwork\u002FAI and Self promotion in wrong channel","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717537468566,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","567337992122007552"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["814558111234654258","980379693435998258","586781513471885323","486957006628847626","833027060665417769","555751551285723139"],"messages":["1247666991699988483"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1247666991699988483","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1247666985760985138","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717535437141,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1212797096374050916","avatar":null,"flags":42,"displayName":"Yasser","roles":["749218503856488518","803662846709858305","1051419794672455700","1019871422669131796","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1212797096374050916\u002F04cb279661fa556af17f87615de32066.webp"},"reason":"Stolen Artwork\u002FAI and Self promotion in wrong channel","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1212797096374050916\u002F04cb279661fa556af17f87615de32066.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@567337992122007552\u003E","inline":true},{"name":"User:","value":"\u003C@!1212797096374050916\u003E","inline":true},{"name":"Ban Reason:","value":"Stolen Artwork\u002FAI and Self promotion in wrong channel"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/eec0a4e443fc14668517a6e3d8ca455d b/.node-persist/interaction/eec0a4e443fc14668517a6e3d8ca455d
new file mode 100644
index 0000000..5b69d61
--- /dev/null
+++ b/.node-persist/interaction/eec0a4e443fc14668517a6e3d8ca455d
@@ -0,0 +1,65 @@
+{"key":"1248807528721158178","value":{"data":{"user_id":"956973246144733215","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"579124982215344138","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1248807528721158178","createdTimestamp":1717809316569,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F956973246144733215\u002F8d055392f66b8aa3833a622d54c07f91.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FMVeqqqklLEAxdjYDhnZ6CISPWzxy6j82ZArMHX5Nrhs\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F956973246144733215\u002F8d055392f66b8aa3833a622d54c07f91.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@579124982215344138\u003E,\u003C@1056165892330893332\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!956973246144733215\u003E","name":"User:","inline":true},{"value":"Unusual DM Activity and Reports on suspicious activity by Members within the server itself.","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1717810405664,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["579124982215344138","1056165892330893332"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["814558111234654258","980379693435998258","586781513471885323","486957006628847626","833027060665417769","555751551285723139"],"messages":["1247666991699988483","1247759213631897623","1247759709029535810","1247791231476568078","1247898267921154143","1247994202860814469","1248097957417324560","1248098054431707211","1248222167771119782","1248323138475790442","1248417933374394431","1248613317065310321","1248665332881821858","1248683623046185063","1248719571863732257","1248807528721158178"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1248807528721158178","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1248807523029618758","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"579124982215344138","member":"579124982215344138","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789372737"),"locale":"en-US","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"579124982215344138"},"user":{"guildId":"486957006628847626","joinedTimestamp":1717717461574,"premiumSinceTimestamp":null,"nickname":null,"pending":false,"communicationDisabledUntilTimestamp":null,"userId":"956973246144733215","avatar":null,"flags":106,"displayName":"Suzane","roles":["749218789962285086","803662918255640607","818194523083112509","820544781590462505","924870780091768852","1019871422669131796","1051419794672455700","1082346734576996412","1097025543020499076","1097025722746413137","1126755158353793034","1159868710010507294","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F956973246144733215\u002F8d055392f66b8aa3833a622d54c07f91.webp"},"reason":"Unusual DM Activity and Reports on suspicious activity by Members within the server itself.","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F956973246144733215\u002F8d055392f66b8aa3833a622d54c07f91.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@579124982215344138\u003E,\u003C@1056165892330893332\u003E","inline":true},{"name":"User:","value":"\u003C@!956973246144733215\u003E","inline":true},{"name":"Ban Reason:","value":"Unusual DM Activity and Reports on suspicious activity by Members within the server itself."}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/.node-persist/interaction/f4eb6e12df2bc41f8f7f0cc789ca906e b/.node-persist/interaction/f4eb6e12df2bc41f8f7f0cc789ca906e
new file mode 100644
index 0000000..3a1c7b3
--- /dev/null
+++ b/.node-persist/interaction/f4eb6e12df2bc41f8f7f0cc789ca906e
@@ -0,0 +1,65 @@
+{"key":"1250062353903386637","value":{"data":{"user_id":"1171467062925869168","settings":{"defaultColor":[43,45,49],"allowed-servers":["486957006628847626","545076257369358336"],"preloads":{"486957006628847626":{"753145819820982282":{"name":"admin-chan"},"748790869938929737":{"name":"logging"},"825023574221783102":{"name":"general"},"1200889277786116121":{"name":"staff-actions"}}}},"author":"567337992122007552","mess":{"channelId":"1200889277786116121","guildId":"486957006628847626","id":"1250062353903386637","createdTimestamp":1718108490206,"type":0,"system":false,"content":"","authorId":"762561860150362142","pinned":false,"tts":false,"nonce":null,"embeds":[{"type":"rich","title":"Ban Confirmed, Awaiting User Cleanup","thumbnail":{"width":128,"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1171467062925869168\u002F9dc100345de1b9625edfad1de54dac82.webp","proxy_url":"https:\u002F\u002Fimages-ext-1.discordapp.net\u002Fexternal\u002FMmWKbLYvkaZZCZUjoTPzdVcjFH15e_elSrvyAiUyu54\u002Fhttps\u002Fcdn.discordapp.com\u002Favatars\u002F1171467062925869168\u002F9dc100345de1b9625edfad1de54dac82.webp","height":128},"footer":{"text":"1\u002F1 confirmations"},"fields":[{"value":"\u003C@567337992122007552\u003E,\u003C@579124982215344138\u003E","name":"Confirmed by Staff:","inline":true},{"value":"\u003C@!1171467062925869168\u003E","name":"User:","inline":true},{"value":"scam","name":"Ban Reason:","inline":false}],"content_scan_version":1,"color":2829617}],"components":[],"attachments":[],"stickers":[],"position":null,"roleSubscriptionData":null,"editedTimestamp":1718109566924,"mentions":{"everyone":false,"users":[],"roles":[],"crosspostedChannels":[],"repliedUser":null,"members":[],"channels":[]},"webhookId":null,"groupActivityApplicationId":null,"applicationId":null,"activity":null,"flags":0,"reference":null,"interaction":null,"cleanContent":""},"confirms":["567337992122007552","579124982215344138"],"param":{"send_loc":{"s":undefined,"e":undefined,"n":undefined,"d":undefined,"_":undefined,"l":undefined,"o":undefined,"c":undefined,"type":0,"guild":"486957006628847626","guildId":"486957006628847626","permissionOverwrites":["980379693435998258","486957006628847626","586781513471885323","814558111234654258","833027060665417769","555751551285723139"],"messages":["1249819811060514981","1249825496045195358","1249950911120412747","1249951001927090199","1250062353903386637"],"threads":[],"nsfw":false,"flags":0,"id":"1200889277786116121","name":"📮staff-actions","rawPosition":2,"parentId":"486963918330396682","topic":null,"lastMessageId":"1250062352448098324","rateLimitPerUser":0,"createdTimestamp":1706384715268},"message":{"m":undefined,"e":undefined,"s":undefined,"a":undefined,"g":undefined,"type":2,"id":"1250062346806886522","applicationId":"762561860150362142","channelId":"1200889277786116121","guildId":"486957006628847626","user":"567337992122007552","member":"567337992122007552","version":1,"appPermissions":BigInt("2223201809976903"),"memberPermissions":BigInt("2249600789380967"),"locale":"en-GB","guildLocale":"en-US","commandId":"1241268932170485802","commandName":"ban","commandType":1,"commandGuildId":"486957006628847626","deferred":false,"replied":true,"ephemeral":true,"webhook":{"id":"762561860150362142"},"options":{},"author":"567337992122007552"},"user":{"guildId":"486957006628847626","joinedTimestamp":1718103229067,"premiumSinceTimestamp":null,"nickname":"Krishna","pending":false,"communicationDisabledUntilTimestamp":null,"userId":"1171467062925869168","avatar":null,"flags":10,"displayName":"Krishna","roles":["803662846709858305","749218789962285086","1097025543020499076","486957006628847626"],"avatarURL":null,"displayAvatarURL":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1171467062925869168\u002F9dc100345de1b9625edfad1de54dac82.webp"},"reason":"scam","details":null,"appeal":null,"thread":null},"embed":{"title":"Ban Confirmed","thumbnail":{"url":"https:\u002F\u002Fcdn.discordapp.com\u002Favatars\u002F1171467062925869168\u002F9dc100345de1b9625edfad1de54dac82.webp"},"footer":{"text":"1\u002F1 confirmations","icon_url":undefined},"color":2829617,"fields":[{"name":"Confirmed by Staff:","value":"\u003C@567337992122007552\u003E,\u003C@579124982215344138\u003E","inline":true},{"name":"User:","value":"\u003C@!1171467062925869168\u003E","inline":true},{"name":"Ban Reason:","value":"scam"}]}},"fn":async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
+ }},"ttl":undefined} \ No newline at end of file
diff --git a/commands/mod/confirm.js b/commands/mod/confirm.js
index ff1aa46..9ef0ed0 100644
--- a/commands/mod/confirm.js
+++ b/commands/mod/confirm.js
@@ -1,11 +1,13 @@
const Discord = require("discord.js")
-const { EmbedBuilder, ActionRowBuilder,ButtonBuilder,ButtonStyle,ChannelType } = require("discord.js");
+let { EmbedBuilder, ActionRowBuilder,ButtonBuilder,ButtonStyle,ChannelType } = require("discord.js");
const { PermissionsBitField } = require('discord.js');
const settings = require("../../src/settings")
const fs = require('fs');
const message = require("../../events/message");
let config_loc = __filename+".json"
let config = JSON.parse(fs.readFileSync(config_loc))
+let { Events, ModalBuilder, TextInputBuilder, TextInputStyle } = require('discord.js');
+const preserve = require("../../src/interaction-preserve")
module.exports = {
name: "ban",
command: ["ban"],
@@ -20,7 +22,7 @@ module.exports = {
{type:"string",name:"ban-reason",desc:"ban reason to be sent to the user",required:true,autocomplete:false},
{type:"string",name:"staff-note",desc:"viewable only to staff",required:false,autocomplete:false},
{type:"boolean",name:"send-appeal",desc:"whether to send your user id for appealing (default : false)", required:false,autocomplete:false},
- {type:"boolean",name:"open-thread",desc:"open a thread for discussion (default : false)", required:false,autocomplete:false},
+ {type:"boolean",name:"open-thread",desc:"open a thread for discussion (default : false) (unused)", required:false,autocomplete:false},
//{type:"boolean",name:"delete-messages",desc:"delete recent messages from user (default : true)", required:false,autocomplete:false},
],
async s_main(client,Discord,interaction){
@@ -36,6 +38,7 @@ module.exports = {
this.exec(client, {
+ send_loc: interaction.channel,
message : interaction,
user : interaction.guild.members.cache.get(interaction.options.getUser("user").id),
reason : interaction.options.getString("ban-reason"),
@@ -45,6 +48,53 @@ module.exports = {
//del_messages : interaction.options.getBoolean("delete-messages") ?? true,
})
},
+ async c_main(client,Discord,interaction){
+ const modal = new ModalBuilder()
+ .setCustomId("ban")
+ .setTitle("Ban")
+
+ const ban_reason = new TextInputBuilder()
+ .setCustomId("ban_reason")
+ .setLabel("Ban reason to be sent to the user")
+ .setStyle(TextInputStyle.Paragraph)
+ .setRequired(true);
+
+ const staff_note = new TextInputBuilder()
+ .setCustomId("staff_note")
+ .setLabel("Note only visible only to staff")
+ .setStyle(TextInputStyle.Paragraph)
+ .setRequired(false)
+
+ const f = new ActionRowBuilder().addComponents(ban_reason)
+ const s = new ActionRowBuilder().addComponents(staff_note)
+
+ modal.addComponents(f, s);
+
+ await interaction.showModal(modal)
+
+ let sub;
+ try{
+ sub = await interaction.awaitModalSubmit({
+ filter: i => i.user.id == interaction.user.id,
+ time: 6000000
+ })
+ } catch(e){
+ return;
+ }
+
+ if(sub){
+ this.exec(client, {
+ send_loc: global.channels["staff-actions"],
+ message: sub,
+ user: interaction.guild.members.cache.get(interaction.targetId),
+ reason: sub.fields.getTextInputValue("ban_reason"),
+ details: sub.fields.getTextInputValue("staff_note"),
+ appeal: false,
+ thread: false,
+ modal:true
+ })
+ }
+ },
async exec(client,param){
if(!param.user){
return param.message.reply({content:"user not found",ephemeral: true })
@@ -52,7 +102,7 @@ module.exports = {
let embed = new EmbedBuilder()
.setTitle("Waiting for Confirmation")
.setThumbnail(param.user.displayAvatarURL())
- .setFooter({text:"0 confirmations"})
+ .setFooter({text:"0 confirmations"+(param.modal==true?" (sent via usercommand)":"")})
.setColor(settings.defaultColor)
embed.addFields(
@@ -72,25 +122,32 @@ module.exports = {
.setLabel('Cancel')
.setStyle(ButtonStyle.Danger)
- const row = new ActionRowBuilder()
+ let row = new ActionRowBuilder()
.addComponents(confirm_button, cancel_button);
let confirms = [param.message.author.id]
+ //let nid;
+ //row, nid = preserve.register(row, this.ban_btn_handle, {confirms:confirms, param:param, embed:embed})
//await param.message.deferReply();
//param.message.deferUpdate()
- let mess = await param.message.deferReply({ fetchReply: true })
- param.message.editReply({embeds:[embed],components:[row]})
+ let tm = await param.message.reply({content:"building message",ephemeral:true})
+ tm.delete()
+ let mess = await param.send_loc.send({embeds:[embed],components:[row]})
+
+ //global.preserve.interactions[nid].data.mess = mess;
+ await preserve.register(mess.id, this.ban_btn_handle, {user_id:param.user.id, settings:settings, author:param.message.author.id, mess:mess, confirms:confirms, param:param, embed:embed})
//await param.message.editReply({embeds:[embed],components:[row]})
//if(mess.partial) mess = mess.fetch()
-
+
+ /*
if(param.thread){
- let th = await client.channels.cache.get(param.message.channelId).threads.create({
+ let th = await client.channels.cache.get(param.send_loc.channelId).threads.create({
name: param.user.user.username,
reason: 'Ban request discussion',
autoArchiveDuration: 60,
type: ChannelType.PublicThread,
})
- }
+ }*/
async function rec_read(){
const collectorFilter = i => i.user.id != param.message.author.id && !confirms.includes(i.user.id);
@@ -152,6 +209,71 @@ module.exports = {
console.log(e)
}
}
- await rec_read();
+ //await rec_read();
+ },
+ ban_btn_handle: async function ban_btn_handle(data, interaction){
+ EmbedBuilder = require("discord.js").EmbedBuilder
+ data.mess = await interaction.channel.messages.fetch(data.mess.id)
+ data.embed = new EmbedBuilder(data.embed)
+ let client = interaction.client
+
+ return new Promise(async (res, rej) => {
+ interaction.deferUpdate();
+ switch(interaction.customId){
+ case "confirm":
+ //if(data.confirms.includes(interaction.author.id))
+ // break
+ data.confirms.push(interaction.author.id)
+ let comb_mod = ""
+ for(let mod of data.confirms){
+ comb_mod += "<@" + mod + ">"
+ if(mod != data.confirms[data.confirms.length-1]) comb_mod += ","
+ }
+ data.embed.setFooter({text:data.confirms.length - 1 + "/1 confirmations"})
+ data.embed.data.fields[0].value = comb_mod
+
+ if(data.confirms.length >= 2){
+ let ban_embed = new EmbedBuilder()
+ .setTitle("Banned from Supernoobs")
+ .setFooter({text:"You have been banned from this server. Maybe in another life, we could have been friends. But not in this one. 💔"})
+ .setColor(data.settings.defaultColor)
+ .setFields({name : "Reason", value : data.param.reason})
+ if(data.param.appeal) ban_embed.addFields({name : "Appeal id", value : "" + data.param.message.author.id})
+ let user = await client.users.cache.get(data.user_id);
+ let could_send = true
+ let could_ban = true
+ let could_del = true
+ data.embed.setTitle("Ban Confirmed, Awaiting User Cleanup");
+ data.mess.edit({embeds:[data.embed],components:[]})
+ try {
+ await user.send({embeds:[ban_embed]})
+ } catch (e) {
+ console.log(e)
+ could_send = false;
+ }
+ try{
+ user = interaction.guild.members.cache.get(user.id)
+ await user.ban({deleteMessageSeconds: 60 * 60 * 24 * 7, reason: data.param.reason})
+ } catch (e) {
+ console.log(e)
+ could_ban = false;
+ }
+
+ data.embed.setTitle("Ban Confirmed" + (!could_send?" | Unable to Message":"") + (!could_ban?" | Unable to Ban":"") + (!could_del?" | Unable to Delete Msgs":""));
+ data.mess.edit({embeds:[data.embed],components:[]})
+ } else {
+ data.mess.edit({embeds:[data.embed]})
+ }
+ break
+ case "cancel":
+ data.embed.setFooter({text:"canceled"})
+ data.embed.setTitle("Ban Request Rejected")
+ data.embed.addFields({name:"Removed By Staff:",value:"<@!"+data.author+">", inline : true})
+ data.mess.edit({embeds:[data.embed],components:[]})
+ break
+ }
+ res(data)
+ })
+
}
};
diff --git a/events/interaction.js b/events/interaction.js
index 571d8d0..8b61445 100644
--- a/events/interaction.js
+++ b/events/interaction.js
@@ -19,16 +19,17 @@ module.exports = {
return console.log("denied interaction from (guild)"+interaction.guild.id)
let date = new Date()
interaction.author = interaction.user
- if(interaction.isChatInputCommand()){
+ if(interaction.isChatInputCommand() || interaction.isUserContextMenuCommand()){
await interaction.guild.members.fetch()
interaction.user = interaction.guild.members.cache.get(interaction.user.id)
let mod = util.is_mod(interaction.member)
let command = global.s_commands.find(o => o.name === interaction.commandName)
if(command.command.config.mod_respect_restrict) mod = false
+
if(!((!command.command.config.restrict||command.command.config.restrict.length==0||command.command.config.restrict.includes(interaction.channel.id))&&
(!command.command.config.restricted||command.command.config.restricted.length==0||!command.command.config.restricted.includes(interaction.channel.id)))
- &&!(!command.command.config.mod_respect_restrict&&mod))
+ &&!(!command.command.config.mod_respect_restrict&&mod)&&!interaction.isUserContextMenuCommand())
return interaction.reply({content:"you cannot send this here! try `sns help` for more info",ephemeral:true})
if(command==null)
return;
@@ -40,10 +41,10 @@ module.exports = {
((date.getTime()-command.command.last_command[uid].getTime())/1000).toFixed(2)+"/"+command.command.config.cooldown+"s",ephemeral:true})
command.command.last_command[uid] = new Date();
- await command.command.s_main(client,Discord,interaction);
+ await command.command[interaction.isChatInputCommand()?"s_main":"c_main"](client,Discord,interaction);
} else if (interaction.isAutocomplete()){
- console.log(interaction.user.id)
+ console.log(interaction.user.id + " : autocomplete")
const focused = interaction.options.getFocused(true);
let command = global.s_commands.find(o => o.name === interaction.commandName)
if(interaction.options._subcommand!=null){
@@ -66,6 +67,23 @@ module.exports = {
console.log("failed to send autocomplete")
}
+ } else if (interaction.isButton()){
+ console.log(global.preserve.interactions.length())
+ let sel = await global.preserve.interactions.getItem(interaction.message.id)
+ if(sel != null){
+ console.log("hi")
+ sel.data = await sel.fn(sel.data, interaction);
+ global.preserve.interactions.setItem(interaction.message.id, sel)
+ }
+ //console.log(interaction)
+ /*
+ let cid = interaction.customId.split(":")
+ if(cid.length > 1){
+ interaction.customId = cid[1];
+ let sel = global.preserve.interactions[parseInt(cid[0])]
+ global.preserve.interactions[parseInt(cid[0])].data = await sel.fn(sel.data, interaction)
+ }
+ */
}
})
diff --git a/events/ready.js b/events/ready.js
index 889c0b1..02064a8 100644
--- a/events/ready.js
+++ b/events/ready.js
@@ -5,6 +5,7 @@ const { EmbedBuilder } = require("discord.js");
let db = require("../src/db")
let settings = require('../src/settings')
let config_loc = __filename+".json"
+
module.exports = {
name : "ready",
config_loc : config_loc,
@@ -12,6 +13,7 @@ module.exports = {
await db._raw.sync()
let config = JSON.parse(fs.readFileSync(config_loc))
client.once("ready", async () => {
+
//preload
global.channels = {}
for(let guild of Object.keys(settings.preloads)){
@@ -30,7 +32,7 @@ module.exports = {
}
//end
- //register slash commands
+ //register slash/user commands
let passed = 0;
let failed = 0;
client.guilds.cache.forEach((g)=>{
diff --git a/index.js b/index.js
index fd9be1e..5d462a6 100644
--- a/index.js
+++ b/index.js
@@ -12,148 +12,170 @@ console.log("["+process.pid+"] running under the name "+process.title)
/**
* Module Imports
*/
-const { Client, Collection, EmbedBuilder, ActivityType, GatewayIntentBits, Partials, Events, SlashCommandBuilder, PermissionsBitField} = require("discord.js");
-const Discord = require('discord.js');
-const dotenv = require("dotenv").config();
-const TOKEN = process.env.TOKEN;
-const path = require("path");
-let db = require("./src/db");
-let util = require("./src/util")
-const client = new Client({
- intents: [
- GatewayIntentBits.Guilds,
- GatewayIntentBits.GuildMessages,
- GatewayIntentBits.DirectMessages,
- GatewayIntentBits.Guilds,
- GatewayIntentBits.GuildBans,
- GatewayIntentBits.GuildMessages,
- GatewayIntentBits.MessageContent,
- GatewayIntentBits.GuildVoiceStates,
- GatewayIntentBits.GuildMessageReactions,
- GatewayIntentBits.DirectMessages,
- GatewayIntentBits.GuildMembers,
- GatewayIntentBits.DirectMessageReactions,
- GatewayIntentBits.DirectMessageTyping,
- //GatewayIntentBits.GuildPresences
- ],
- partials: [Partials.Message, Partials.Channel, Partials.Reaction, Partials.User]
-});
+async function main(){
+ const { Client, Collection, EmbedBuilder, ActivityType, GatewayIntentBits, Partials, Events, SlashCommandBuilder, PermissionsBitField} = require("discord.js");
+ const Discord = require('discord.js');
+ const dotenv = require("dotenv").config();
+ const TOKEN = process.env.TOKEN;
+ const path = require("path");
+ let db = require("./src/db");
+ let util = require("./src/util")
+ const { ModalBuilder, REST, Routes, ContextMenuCommandBuilder, ApplicationCommandType } = require('discord.js');
-client.login(TOKEN);
+ const client = new Client({
+ intents: [
+ GatewayIntentBits.Guilds,
+ GatewayIntentBits.GuildMessages,
+ GatewayIntentBits.DirectMessages,
+ GatewayIntentBits.Guilds,
+ GatewayIntentBits.GuildBans,
+ GatewayIntentBits.GuildMessages,
+ GatewayIntentBits.MessageContent,
+ GatewayIntentBits.GuildVoiceStates,
+ GatewayIntentBits.GuildMessageReactions,
+ GatewayIntentBits.DirectMessages,
+ GatewayIntentBits.GuildMembers,
+ GatewayIntentBits.DirectMessageReactions,
+ GatewayIntentBits.DirectMessageTyping,
+ //GatewayIntentBits.GuildPresences
+ ],
+ partials: [Partials.Message, Partials.Channel, Partials.Reaction, Partials.User]
+ });
-function update_options(scom,options){
- for(let opt of options){
- let autocomplete = opt.autocomplete!=null&&opt.autocomplete!=false;
- switch(opt.type){
- case 'string':
- scom.addStringOption(option => {
+ client.login(TOKEN);
+
+ function update_options(scom,options){
+ for(let opt of options){
+ let autocomplete = opt.autocomplete!=null&&opt.autocomplete!=false;
+ switch(opt.type){
+ case 'string':
+ scom.addStringOption(option => {
+ option.setName(opt.name)
+ .setDescription(opt.desc)
+ .setRequired(opt.required)
+ .setAutocomplete(autocomplete)
+ if(!autocomplete&&opt.choices!=null&&opt.choices!=false){
+ if(typeof opt.choices[0] === 'string'){
+ for(let i in opt.choices) opt.choices[i] = {name:opt.choices[i],value:opt.choices[i]}
+ }
+ option.setChoices(...opt.choices)
+ }
+ return option;
+ })
+ break;
+ case 'bool': case 'boolean':
+ scom.addBooleanOption(option =>
+ option.setName(opt.name)
+ .setDescription(opt.desc)
+ .setRequired(opt.required))
+ break;
+ case 'channel':
+ scom.addChannelOption(option =>
option.setName(opt.name)
.setDescription(opt.desc)
- .setRequired(opt.required)
- .setAutocomplete(autocomplete)
- if(!autocomplete&&opt.choices!=null&&opt.choices!=false){
- if(typeof opt.choices[0] === 'string'){
- for(let i in opt.choices) opt.choices[i] = {name:opt.choices[i],value:opt.choices[i]}
- }
- option.setChoices(...opt.choices)
- }
- return option;
- })
- break;
- case 'bool': case 'boolean':
- scom.addBooleanOption(option =>
+ .setRequired(opt.required))
+ break;
+ case 'user':
+ scom.addUserOption(option =>
+ option.setName(opt.name)
+ .setDescription(opt.desc)
+ .setRequired(opt.required))
+ break;
+ case 'role':
+ scom.addRoleOption(option =>
option.setName(opt.name)
.setDescription(opt.desc)
.setRequired(opt.required))
- break;
- case 'channel':
- scom.addChannelOption(option =>
- option.setName(opt.name)
- .setDescription(opt.desc)
- .setRequired(opt.required))
- break;
- case 'user':
- scom.addUserOption(option =>
- option.setName(opt.name)
- .setDescription(opt.desc)
- .setRequired(opt.required))
- break;
- case 'role':
- scom.addRoleOption(option =>
- option.setName(opt.name)
- .setDescription(opt.desc)
- .setRequired(opt.required))
- break;
- case 'attachment':
- scom.addAttachmentOption(option =>
- option.setName(opt.name)
- .setDescription(opt.desc)
- .setRequired(opt.required))
- break;
- case 'sub':
- scom.addSubcommand(subcommand => {
- subcommand
- .setName(opt.name)
- .setDescription("test")
- return update_options(subcommand, opt.options)
- })
- break;
+ break;
+ case 'attachment':
+ scom.addAttachmentOption(option =>
+ option.setName(opt.name)
+ .setDescription(opt.desc)
+ .setRequired(opt.required))
+ break;
+ case 'sub':
+ scom.addSubcommand(subcommand => {
+ subcommand
+ .setName(opt.name)
+ .setDescription("test")
+ return update_options(subcommand, opt.options)
+ })
+ break;
+ }
+
}
-
+ scom.opt = options
+ return scom;
}
- scom.opt = options
- return scom;
-}
-let commands = []
-let s_commands = []
-fs.readdirSync("./commands/").forEach(folder => {
- fs.readdirSync("./commands/"+folder).forEach(file => {
- if(path.extname(file)==".js"){
- try{
- let com = require("./commands/"+folder+"/"+file)
- com.last_command = {};
- commands.push(com)
- if(com.s_main!=null){
- let scom = new SlashCommandBuilder()
- .setName(com.name.replace(/ /g,'-'))
- .setDescription(com.config.desc)
- if(com.mod_only)
- scom.setDefaultMemberPermissions(PermissionsBitField.Flags.ManageRoles)
- if(com.s_options!=null){
- update_options(scom,com.s_options);
+ let commands = []
+ let s_commands = []
+ fs.readdirSync("./commands/").forEach(folder => {
+ fs.readdirSync("./commands/"+folder).forEach(file => {
+ if(path.extname(file)==".js"){
+ try{
+ let com = require("./commands/"+folder+"/"+file)
+ com.last_command = {};
+ commands.push(com)
+ if(com.s_main!=null){
+ let scom = new SlashCommandBuilder()
+ .setName(com.name.replace(/ /g,'-'))
+ .setDescription(com.config.desc)
+ if(com.mod_only)
+ scom.setDefaultMemberPermissions(PermissionsBitField.Flags.ManageRoles)
+ if(com.s_options!=null){
+ update_options(scom,com.s_options);
+ }
+ scom = scom.toJSON()
+ scom.command = com
+ s_commands.push(scom)
}
- scom = scom.toJSON()
- scom.command = com
- s_commands.push(scom)
- }
- } catch (e) {
- if(e.code=="ENOENT"){
- console.log("[ENOENT] missing some config files:( run 'sh buildconfig.sh' to get them\nexiting~")
+ if(com.c_main!=null){
+ let ccom = new ContextMenuCommandBuilder()
+ .setName(com.name.replace(/ /g,'-'))
+ .setType(ApplicationCommandType.User)
+ if(com.mod_only)
+ ccom.setDefaultMemberPermissions(PermissionsBitField.Flags.ManageRoles)
+ ccom = ccom.toJSON()
+ ccom.command = com
+ s_commands.push(ccom)
+ }
+ } catch (e) {
+ if(e.code=="ENOENT"){
+ console.log("[ENOENT] missing some config files:( run 'sh buildconfig.sh' to get them\nexiting~")
+ process.exit(e.errno)
+ }
+ console.log("["+e.code+"]"+" unexpected error:( something is wrong with the ./commands/*/* files\n****\n")
+ console.log(e)
+
process.exit(e.errno)
}
- console.log("["+e.code+"]"+" unexpected error:( something is wrong with the ./commands/*/* files\n****\n")
- console.log(e)
-
- process.exit(e.errno)
}
- }
+ })
})
-})
-client.env = process.env
-global.commands = commands;
-global.s_commands = s_commands;
-global.recent_messages = [];
+ global.rest = new REST().setToken(TOKEN)
+ global.c_commands = [new ContextMenuCommandBuilder()
+ .setName('test')
+ .setType(ApplicationCommandType.User)
+ .setDefaultMemberPermissions(PermissionsBitField.Flags.ManageRoles)
+]
+
+ client.env = process.env
+ global.commands = commands;
+ global.s_commands = s_commands;
+ global.recent_messages = [];
-fs.readdirSync("./events/").forEach(file => {
- if(path.extname(file)==".js")
- require("./events/"+file).main(client,Discord)
-})
+ fs.readdirSync("./events/").forEach(file => {
+ if(path.extname(file)==".js")
+ require("./events/"+file).main(client,Discord)
+ })
-try{
- require("./src/webui")
-} catch(e) {
- console.log("failed loading webui:c")
+ try{
+ require("./src/webui")
+ } catch(e) {
+ console.log("failed loading webui:c")
+ }
}
+main()
diff --git a/package.json b/package.json
index 8374f33..f47cd6b 100644
--- a/package.json
+++ b/package.json
@@ -22,8 +22,10 @@
"ffmpeg-static": "^4.2.3",
"git-changed-files": "^1.0.0",
"git-last-commit": "^1.0.1",
+ "node-persist": "^2.1.0",
"os-utils": "^0.0.14",
"sequelize": "^6.32.1",
+ "serialize-javascript": "^6.0.2",
"sharp": "^0.32.6",
"sqlite3": "^5.1.6",
"weeby-js": "^1.0.3"
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 632a999..e78ebf7 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -35,12 +35,18 @@ dependencies:
git-last-commit:
specifier: ^1.0.1
version: 1.0.1
+ node-persist:
+ specifier: ^2.1.0
+ version: 2.1.0
os-utils:
specifier: ^0.0.14
version: 0.0.14
sequelize:
specifier: ^6.32.1
version: 6.33.0([email protected])
+ serialize-javascript:
+ specifier: ^6.0.2
+ version: 6.0.2
sharp:
specifier: ^0.32.6
version: 0.32.6
@@ -1409,6 +1415,14 @@ packages:
engines: {node: '>= 0.10'}
dev: false
+ resolution: {integrity: sha512-7Kr05z5LkcOpoMvxHN1PC11WbPabdNFmMYYo0eZvWu3BfVS0T03yoqYDczoCBx17xqk2x1XAZrcKiFVL88jxlQ==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-relative: 0.2.1
+ is-windows: 0.2.0
+ dev: false
+
resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==}
dev: false
@@ -1441,6 +1455,25 @@ packages:
engines: {node: '>=8'}
dev: true
+ resolution: {integrity: sha512-9AMzjRmLqcue629b4ezEVSK6kJsYJlUIhMcygmYORUgwUNJiavHcC3HkaGx0XYpyVKQSOqFbMEZmW42cY87sYw==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ is-unc-path: 0.1.2
+ dev: false
+
+ resolution: {integrity: sha512-HhLc5VDMH4pu3oMtIuunz/DFQUIoR561kMME3U3Afhj8b7vH085vkIkemrz1kLXCEIuoMAmO3yVmafWdSbGW8w==}
+ engines: {node: '>=0.10.0'}
+ dependencies:
+ unc-path-regex: 0.1.2
+ dev: false
+
+ resolution: {integrity: sha512-n67eJYmXbniZB7RF4I/FTjK1s6RPOCTxhYrVYLRaCt3lF0mpWZPKr3T2LSZAqyjQsxR2qMmGYXXzK0YWwcPM1Q==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==}
@@ -1667,6 +1700,13 @@ packages:
resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==}
dev: false
+ resolution: {integrity: sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==}
+ hasBin: true
+ dependencies:
+ minimist: 1.2.8
+ dev: false
+
resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==}
engines: {node: '>=10'}
@@ -1760,6 +1800,14 @@ packages:
dev: false
optional: true
+ resolution: {integrity: sha512-NI30KmynAIpKtvl3XaLE/Q/hPUNfh2bFM0U9zgWyIVzBUL/fh1EMk2/rTAqWY6KXrX8jqusVA6avPJ6I2S9B4w==}
+ dependencies:
+ is-absolute: 0.2.6
+ mkdirp: 0.5.6
+ q: 1.1.2
+ dev: false
+
resolution: {integrity: sha512-xOqifvw/3N+tIeeC80/TNJXkoxDZm8JWc7/0VBkJ86ttQTlJvoicuVaeJlKKHYRlmC2O6ygNIhNPwLYX4bxqdA==}
engines: {node: '>=8'}
@@ -1989,6 +2037,11 @@ packages:
engines: {node: '>=6'}
dev: true
+ resolution: {integrity: sha512-ROtylwux7Vkc4C07oKE/ReigUmb33kVoLtcR4SJ1QVqwaZkBEDL3vX4/kwFzIERQ5PfCl0XafbU8u2YUhyGgVA==}
+ engines: {node: '>=0.6.0', teleport: '>=0.2.0'}
+ dev: false
+
resolution: {integrity: sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==}
engines: {node: '>=0.6'}
@@ -2004,6 +2057,12 @@ packages:
resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==}
dev: false
+ resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
+ dependencies:
+ safe-buffer: 5.2.1
+ dev: false
+
resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==}
engines: {node: '>= 0.6'}
@@ -2172,6 +2231,12 @@ packages:
- supports-color
dev: false
+ resolution: {integrity: sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==}
+ dependencies:
+ randombytes: 2.1.0
+ dev: false
+
resolution: {integrity: sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==}
engines: {node: '>= 0.8.0'}
@@ -2470,6 +2535,11 @@ packages:
resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==}
dev: false
+ resolution: {integrity: sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==}
+ engines: {node: '>=0.10.0'}
+ dev: false
+
resolution: {integrity: sha512-Ji2IJhFXZY0x/0tVBXeQwgPlLWw13GVzpsWPQ3rV50IFMMof2I55PZZxtm4P6iNq+L5znYN9nSTAq0ZyE6lSJw==}
engines: {node: '>=14.0'}
diff --git a/src/interaction-preserve.js b/src/interaction-preserve.js
new file mode 100644
index 0000000..da4f1c9
--- /dev/null
+++ b/src/interaction-preserve.js
@@ -0,0 +1,18 @@
+const { stringify } = require('querystring');
+let serialize = require('serialize-javascript');
+function deserialize(i){
+ return eval('(' + i + ')');
+ }
+global.preserve = {}
+global.preserve.interactions = require('node-persist')
+global.preserve.interactions.initSync({dir:"./.node-persist/interaction",parse:deserialize,
+ stringify:serialize})
+
+module.exports = {
+ register: async (id, fn, data) => {
+ await global.preserve.interactions.setItem(id, {
+ data:data,
+ fn:fn
+ })
+ },
+} \ No newline at end of file
diff --git a/src/settings.js b/src/settings.js
index 6baea47..556968a 100644
--- a/src/settings.js
+++ b/src/settings.js
@@ -14,6 +14,9 @@ module.exports = {
},
"825023574221783102":{
name: "general"
+ },
+ "1200889277786116121":{
+ name: "staff-actions"
}
}
}