diff options
| author | 8cy <[email protected]> | 2020-07-23 23:24:17 -0700 |
|---|---|---|
| committer | 8cy <[email protected]> | 2020-07-23 23:24:17 -0700 |
| commit | bb511abc03bb66848947e37a999502b813c77269 (patch) | |
| tree | 612c010fc8317e1cdf11471a18aad0270819d33e /src/commands/server | |
| parent | fix: if clear amount equal or over 100, round down to 99 (diff) | |
| download | dep-core-bb511abc03bb66848947e37a999502b813c77269.tar.xz dep-core-bb511abc03bb66848947e37a999502b813c77269.zip | |
goodbye old uwufier :cry:
Diffstat (limited to 'src/commands/server')
| -rw-r--r-- | src/commands/server/goodbye.ts | 101 | ||||
| -rw-r--r-- | src/commands/server/membercount.ts | 31 | ||||
| -rw-r--r-- | src/commands/server/oldestmember.ts | 53 | ||||
| -rw-r--r-- | src/commands/server/poll.ts | 53 | ||||
| -rw-r--r-- | src/commands/server/quotemessage.ts | 88 | ||||
| -rw-r--r-- | src/commands/server/randommember.ts | 35 | ||||
| -rw-r--r-- | src/commands/server/roleinfo.ts | 60 | ||||
| -rw-r--r-- | src/commands/server/roles.ts | 40 | ||||
| -rw-r--r-- | src/commands/server/server.ts | 54 | ||||
| -rw-r--r-- | src/commands/server/welcome.ts | 101 |
10 files changed, 0 insertions, 616 deletions
diff --git a/src/commands/server/goodbye.ts b/src/commands/server/goodbye.ts deleted file mode 100644 index b924654..0000000 --- a/src/commands/server/goodbye.ts +++ /dev/null @@ -1,101 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -//@ts-ignore no types -import emoji from 'emoji-random'; -import Goodbye from '../../models/goodbye.js'; -import mongo from 'mongoose'; -import config from '../../config.json'; -mongo.connect(config['mongodburi'], { useNewUrlParser: true, useUnifiedTopology: true }) - -module.exports = class GoodbyeServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'goodbye', - group: 'server', - memberName: 'goodbye', - description: 'Allows you to set, change or delete a server goodbye message.', - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - examples: [ - 'uwu!goodbye', - 'uwu!goodbye set', - 'uwu!goodbye remove' - ], - args: [ - { - key: 'wType', - prompt: 'Would you like to set, remove or change the current goodbye channel?', - type: 'string', - default: '' - } - ], - throttling: { - usages: 5, - duration: 30 - }, - guildOnly: true - }); - } - //@ts-ignore doesnt matter if not all code paths return a value - async run(msg: CommandoMessage, { wType }: any) { - const goodbye = new Goodbye({ - _id: mongo.Types.ObjectId(), - username: msg.author.username, - userID: msg.author.id, - guildname: msg.guild.name, - guildID: msg.guild.id, - channelname: msg.channel, - channelID: msg.channel.id, - time: msg.createdAt - }) - const guildExist = await Goodbye.findOne({ guildID: msg.guild.id }) - - if (msg.member.hasPermission('MANAGE_GUILD')) { - Goodbye.findOne({ guildID: msg.guild.id }, async (error, guild) => { - if (error) { - console.log(error) - } else if (guild && wType == 'remove') { - await Goodbye.findOneAndDelete({ guildID: msg.guild.id }) - msg.say('The current goodbye channel has been unset! ' + emoji.random()).then(mnotif => { - //@ts-ignore this exists - mnotif.delete({ timeout: 2000 }) - //@ts-ignore this exists - msg.delete({ timeout: 2000 }) - }) - } else if (!guild && wType == 'remove') { - msg.reply('There is no current goodbye channel set for this guild! ' + emoji.random()).then(mnotif => { - //@ts-ignore this exists - mnotif.delete({ timeout: 2000 }) - //@ts-ignore this exists - msg.delete({ timeout: 2000 }) - }) - } else if (guild && wType == 'set') { - //@ts-ignore this exists - msg.reply(`There already is a goodbye channel set! It's ${guild.channelname}! ` + emoji.random()).then(mnotif => { - //@ts-ignore this exists - mnotif.delete({ timeout: 2000 }) - //@ts-ignore this exists - msg.delete({ timeout: 2000 }) - }) - } else if (!guild && wType == 'set') { - await goodbye.save() - .then(result => console.log(result)) - .catch(err => console.log(err)) - - msg.reply(`The goodbye channel has been set to ${msg.channel}! ` + emoji.random()).then(mnotif => { - //@ts-ignore this exists - mnotif.delete({ timeout: 2000 }) - //@ts-ignore this exists - msg.delete({ timeout: 2000 }) - }) - } else if (!guild) { - msg.reply('There is no current goodbye channel set for this guild! To set one, do `uwu!goodbye set` in the channel you want to set it in. ' + emoji.random()) - } else if (guild) { - //@ts-ignore this exists - msg.reply(`The current goodbye channel is ${guild.channelname}. ` + emoji.random()) - } - }) - } else { - return msg.reply('Insufficent permissions! ' + emoji.random()) - } - } -};
\ No newline at end of file diff --git a/src/commands/server/membercount.ts b/src/commands/server/membercount.ts deleted file mode 100644 index ef1d271..0000000 --- a/src/commands/server/membercount.ts +++ /dev/null @@ -1,31 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -//@ts-ignore no types -import emoji from 'emoji-random'; - -module.exports = class MemberCountServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'membercount', - aliases: ['memberc', 'mcount', 'mc'], - group: 'server', - memberName: 'membercount', - description: 'Tells you how many members are in the current server.', - throttling: { - usages: 5, - duration: 30 - }, - guildOnly: true, - examples: [ - 'uwu!membercount', - 'uwu!memberc', - 'uwu!mcount', - 'uwu!mc' - ], - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'] - }); - } - run(msg: CommandoMessage) { - return msg.reply(`There are **${msg.guild.memberCount}** members in **${msg.guild.name}**. ` + emoji.random()); - } -};
\ No newline at end of file diff --git a/src/commands/server/oldestmember.ts b/src/commands/server/oldestmember.ts deleted file mode 100644 index 974e476..0000000 --- a/src/commands/server/oldestmember.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -//@ts-ignore no types -import emoji from 'emoji-random' -import { formatDistance, formatRelative } from 'date-fns' -//@ts-ignore no types -import { stripIndents } from 'common-tags' - -module.exports = class OldestMemberServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'oldestmember', - aliases: [ - 'oldest-member', - 'oldestuser', - 'oldest-user', - 'oldest' - ], - group: 'server', - memberName: 'oldestmember', - description: 'Checks who the oldest member on the server is.', - examples: ['uwu!oldestmember'], - throttling: { - usages: 5, - duration: 30 - }, - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - guildOnly: true - }); - } - run(msg: CommandoMessage) { - const oldest = msg.guild.members - .cache.sort((member1, member2) => { - const timestamp1 = member1.user.createdTimestamp - const timestamp2 = member2.user.createdTimestamp - - if (timestamp1 > timestamp2) { - return 1 - } else if (timestamp1 < timestamp2) { - return -1 - } - return 0 - }).first()?.user; - - // TODO: - //@ts-ignore no idea why - const { createdAt } = oldest - const age = formatDistance(createdAt, new Date()) - const date = formatRelative(createdAt, new Date()) - return msg.reply(stripIndents`${oldest?.tag} is the oldest member in this server. - Their account is **${age}** old (created **${date}**).` + ' ' + emoji.random()) - } -};
\ No newline at end of file diff --git a/src/commands/server/poll.ts b/src/commands/server/poll.ts deleted file mode 100644 index 8eafcb9..0000000 --- a/src/commands/server/poll.ts +++ /dev/null @@ -1,53 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -import { MessageEmbed } from 'discord.js'; -//@ts-ignore no types -import emoji from 'emoji-random' -import config from '../../config.json' - -module.exports = class PollServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'poll', - group: 'server', - memberName: 'poll', - description: 'Make a poll.', - examples: ['uwu!poll am i cool?'], - throttling: { - usages: 5, - duration: 30 - }, - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - guildOnly: true - }); - } - //@ts-ignore this is not async - run(msg: CommandoMessage) { - if (config['validUsers'].includes(msg.author.id)) { - let messageArray = msg.content.split(' ') - let args = messageArray.slice(1) - - if (!args || args.length < 1) { - return msg.reply(`No poll content was specified. ${emoji.random()}`) - } else { - let emb = new MessageEmbed() - .setColor(0xFFCC4D) - .setFooter('React to vote.') - .setDescription(args.join(' ')) - .setTitle(`Poll Created by ${msg.author.username} ${emoji.random()}`) - return msg.say(emb).then(fMsg => { - //@ts-ignore yes these exist - fMsg.react('✅') - //@ts-ignore yes these exist - fMsg.react('❎') - //@ts-ignore yes these exist - msg.delete({ timeout: 1000 }) - }) - } - } else { - msg.delete() - //@ts-ignore - return msg.reply(`Insufficent permissions! ${emoji.random()}`).then(m => m.delete({ timeout: 3000 })) - } - } -};
\ No newline at end of file diff --git a/src/commands/server/quotemessage.ts b/src/commands/server/quotemessage.ts deleted file mode 100644 index d421f68..0000000 --- a/src/commands/server/quotemessage.ts +++ /dev/null @@ -1,88 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -import { MessageEmbed } from 'discord.js'; -const tt = require('../../utils/truncateText.js') -import path from 'path' - -module.exports = class QuoteMessageServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'quotemessage', - aliases: [ - 'quote-message', - 'quotemsg', - 'quote-msg' - ], - group: 'fun', - memberName: 'quotemessage', - description: 'Quote a message from a text channel.', - examples: ['uwu!quotemessage 424936127154094080'], - throttling: { - usages: 5, - duration: 30 - }, - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - args: [ - { - key: 'mMsg', - prompt: 'What message would you like to quote?', - type: 'message', - label: 'message ID' - } - ] - }); - } - run(msg: CommandoMessage, { mMsg }: any) { - let emb = new MessageEmbed() - .setColor(0xFFCC4D) - .setTimestamp(mMsg.createdAt) - .setAuthor(mMsg.author.tag, mMsg.author.avatarUrl) // TODO: fix avatarurl not working - .addFields([ - { - name: 'Channel', - value: mMsg.channel.toString() - }, - { - name: 'Message', - value: `[Jump to](https://discordapp.com/channels/${mMsg.guild.id}/${mMsg.channel.id}/${mMsg.id})` - } - ]) - - // check if msg had content - console.debug('Does the message have content:', Boolean(mMsg.content)) - if (mMsg.content) emb.setDescription(tt(mMsg.content)) - - // get img from msg - let messageImage - // valid img file extensions - const extensions = ['.png', '.jpg', '.jpeg', '.gif', '.webp'] - // regex for url to img - const linkRegex = /https?:\/\/(?:\w+\.)?[\w-]+\.[\w]{2,3}(?:\/[\w-_.]+)+\.(?:png|jpg|jpeg|gif|webp)/; - - // embed (that may or may not exist) with an img in it - const imageEmbed = mMsg.embeds.find((msgEmbed: { type: string; image: { url: string; }; }) => { - msgEmbed.type === 'rich' && msgEmbed.image && extensions.includes(path.extname(msgEmbed.image.url)) - }) - - if (imageEmbed) messageImage = imageEmbed.image.url - - // uploaded img - const attachment = mMsg.attachments.find((file: { url: string; }) => extensions.includes(path.extname(file.url))) - if (attachment) { - messageImage = attachment.url - } - - // if there wasnt an uploaded img check if there was a url to one - if (!messageImage) { - const linkMatch = mMsg.content.match(linkRegex) - if (linkMatch && extensions.includes(path.extname(linkMatch[0]))) { - [messageImage] = linkMatch - } - } - - // if there was an img, set embed image to it - if (messageImage) emb.setImage(messageImage) - - return msg.say(emb) - } -};
\ No newline at end of file diff --git a/src/commands/server/randommember.ts b/src/commands/server/randommember.ts deleted file mode 100644 index 5514561..0000000 --- a/src/commands/server/randommember.ts +++ /dev/null @@ -1,35 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -//@ts-ignore no types -import emoji from 'emoji-random' - -module.exports = class RandomMemberServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'randommember', - aliases: [ - 'random-member', - 'randomuser', - 'random-user', - 'someone', - '@someone', - ], - group: 'fun', - memberName: 'randommember', - description: 'Gets a random member from the server.', - examples: ['uwu!randommember'], - throttling: { - usages: 5, - duration: 30 - }, - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'] - }); - } - run(msg: CommandoMessage) { - if (msg.channel.type === 'dm') { - const members = [this.client.user, msg.channel.recipient]; - return msg.reply(`I choose ${members[Math.floor(Math.random() * members.length)]?.username}! ${emoji.random()}`); - } - return msg.reply(`I choose ${msg.guild.members.cache.random().displayName}! ${emoji.random()}`); - } -};
\ No newline at end of file diff --git a/src/commands/server/roleinfo.ts b/src/commands/server/roleinfo.ts deleted file mode 100644 index cfd5d33..0000000 --- a/src/commands/server/roleinfo.ts +++ /dev/null @@ -1,60 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -import { MessageEmbed } from 'discord.js'; - -module.exports = class RoleInfoServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'roleinfo', - aliases: [ - 'role-info' - ], - group: 'server', - memberName: 'roleinfo', - description: 'Gets information on a specified role.', - examples: ['uwu!roleinfo @Role'], - throttling: { - usages: 5, - duration: 30 - }, - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - guildOnly: true, - args: [ - { - key: 'rRole', - prompt: 'What role would you like to get information on?', - type: 'role' - } - ] - }); - } - run(msg: CommandoMessage, { rRole }: any) { - let emb = new MessageEmbed() - .setColor(0xFFCC4D) - .setTitle(`${rRole.name} (${rRole.id})`) - .setTimestamp(rRole.createdAt) - .addFields([ - { - name: '🔢 Position', - value: `${rRole.position + 1} (raw position: ${rRole.rawPosition})` - }, - { - name: '**@** Mentionable', - value: rRole.mentionable ? 'Yes' : 'No' - }, - { - name: "💡 Display separately", - value: rRole.hoist ? "Yes" : "No" - }, - { - name: "👥 Members", - value: rRole.members.size - }, - { - name: "🔍 Color", - value: `Use ${msg.anyUsage(`color ${rRole.hexColor}`)}` - } - ]) - return msg.say(emb) - } -};
\ No newline at end of file diff --git a/src/commands/server/roles.ts b/src/commands/server/roles.ts deleted file mode 100644 index 4ab14fe..0000000 --- a/src/commands/server/roles.ts +++ /dev/null @@ -1,40 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -import { MessageEmbed } from 'discord.js'; -const tt = require('../../utils/truncateText.js') - -module.exports = class RolesServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'roles', - aliases: [ - 'list-roles', - 'listroles', - 'roles-list', - 'roleslist' - ], - group: 'server', - memberName: 'roles', - description: 'Lists all the roles on the current server.', - examples: ['uwu!roles'], - throttling: { - usages: 5, - duration: 30 - }, - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - guildOnly: true - }); - } - run(msg: CommandoMessage) { - let emb = new MessageEmbed() - .setColor(0xFFCC4D) - .setTitle('All Roles') - .setDescription(tt( - msg.guild.roles - .cache.sort((role1, role2) => role2.position - role1.position) - .array() - .join(', ') - )) - return msg.say(emb) - } -};
\ No newline at end of file diff --git a/src/commands/server/server.ts b/src/commands/server/server.ts deleted file mode 100644 index 974a435..0000000 --- a/src/commands/server/server.ts +++ /dev/null @@ -1,54 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -import { MessageEmbed } from 'discord.js'; - -module.exports = class ServerServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'server', - aliases: [ - 'serverinfo', - 'si', - 'server-info', - 'serverstats', - 'server-stats' - ], - group: 'server', - memberName: 'server', - description: 'Gives you information about the current server.', - throttling: { - usages: 5, - duration: 30 - }, - guildOnly: true, - examples: [ - 'uwu!server', - 'uwu!serverinfo', - 'uwu!server-info', - 'uwu!serverstats', - 'uwu!server-stats', - 'uwu!si' - ], - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'] - }); - } - run(msg: CommandoMessage) { - var o = msg.guild.members.cache.filter(m => m.presence.status === 'online').size; - - let embed = new MessageEmbed() - - .setAuthor(`${msg.guild.name} - ${msg.guild.id}`, `${msg.guild.iconURL()}`, `https://discordapp.com/channels/${msg.guild.id}/${msg.guild.id}`) - .setDescription(`Here\'s all the information on \`${msg.guild.name}\``) - .setThumbnail(`${msg.guild.iconURL()}`) - .addField('Owner', `${msg.guild.owner}`, true) - .addField(`Members [${msg.guild.memberCount}]`, `${o} members are online.`, true) - .addField('Region', `${msg.guild.region}`, true) - .addField('Text channels', `${msg.guild.channels.cache.filter(c => c.type === 'text').size}`, true) - .addField('Voice channels', `${msg.guild.channels.cache.filter(c => c.type === 'voice').size}`, true) - .addField('Guild created', `${msg.guild.createdAt}`, false) - .addField(`${this.client.user?.username} joined`, `${msg.guild.members.cache.get('699473263998271489')?.joinedAt}`) - .setColor(0xFFCC4D); - - return msg.say(embed); - } -};
\ No newline at end of file diff --git a/src/commands/server/welcome.ts b/src/commands/server/welcome.ts deleted file mode 100644 index 68b3046..0000000 --- a/src/commands/server/welcome.ts +++ /dev/null @@ -1,101 +0,0 @@ -import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; -//@ts-ignore no types -import emoji from 'emoji-random'; -import Welcome from '../../models/welcome.js'; -import mongo from 'mongoose'; -import config from '../../config.json'; -mongo.connect(config['mongodburi'], { useNewUrlParser: true, useUnifiedTopology: true }) - -module.exports = class WelcomeServer extends Command { - constructor(client: CommandoClient) { - super(client, { - name: 'welcome', - group: 'server', - memberName: 'welcome', - description: 'Allows you to set, change or delete a server welcome message.', - userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], - examples: [ - 'uwu!welcome', - 'uwu!welcome set', - 'uwu!welcome remove' - ], - args: [ - { - key: 'wType', - prompt: 'Would you like to set, remove or change the current welcome channel?', - type: 'string', - default: '' - } - ], - throttling: { - usages: 5, - duration: 30 - }, - guildOnly: true - }); - } - //@ts-ignore doesnt matter if not all code paths return - async run(msg: CommandoMessage, { wType }: any) { - const welcome = new Welcome({ - _id: mongo.Types.ObjectId(), - username: msg.author.username, - userID: msg.author.id, - guildname: msg.guild.name, - guildID: msg.guild.id, - channelname: msg.channel, - channelID: msg.channel.id, - time: msg.createdAt - }) - // const guildExist = await Welcome.findOne({ guildID: msg.guild.id }) - - if (msg.member.hasPermission('MANAGE_GUILD')) { - Welcome.findOne({ guildID: msg.guild.id }, async (error, guild) => { - if (error) { - return console.log(error) - } else if (guild && wType == 'remove') { - await Welcome.findOneAndDelete({ guildID: msg.guild.id }) - return msg.say('The current welcome channel has been unset! ' + emoji.random()).then(mnotif => { - //@ts-ignore this exists - mnotif.delete({ timeout: 2000 }) - //@ts-ignore this exists - msg.delete({ timeout: 2000 }) - }) - } else if (!guild && wType == 'remove') { - return msg.reply('There is no current welcome channel set for this guild! ' + emoji.random()).then(mnotif => { - //@ts-ignore this exists - mnotif.delete({ timeout: 2000 }) - //@ts-ignore this exists - msg.delete({ timeout: 2000 }) - }) - } else if (guild && wType == 'set') { - //@ts-ignore this exists - return msg.reply(`There already is a welcome channel set! It's ${guild.channelname}! ` + emoji.random()).then(mnotif => { - //@ts-ignore this exists - mnotif.delete({ timeout: 2000 }) - //@ts-ignore this exists - msg.delete({ timeout: 2000 }) - }) - } else if (!guild && wType == 'set') { - await welcome.save() - .then(result => console.log(result)) - .catch(err => console.log(err)) - - return msg.reply(`The welcome channel has been set to ${msg.channel}! ` + emoji.random()).then(mnotif => { - //@ts-ignore this exists - mnotif.delete({ timeout: 2000 }) - //@ts-ignore this exists - msg.delete({ timeout: 2000 }) - }) - } else if (!guild) { - return msg.reply('There is no current welcome channel set for this guild! To set one, do `uwu!welcome set` in the channel you want to set it in. ' + emoji.random()) - } else if (guild) { - //@ts-ignore this exists - return msg.reply(`The current welcome channel is ${guild.channelname}. ` + emoji.random()) - } - }) - } else { - return msg.reply('Insufficent permissions! ' + emoji.random()) - } - } -};
\ No newline at end of file |