Skip to content
This repository was archived by the owner on Dec 21, 2018. It is now read-only.

Commit 8201768

Browse files
author
Matthew Ray
committed
Initial commit
0 parents  commit 8201768

File tree

6,747 files changed

+463202
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

6,747 files changed

+463202
-0
lines changed

.eslintrc.json

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
{
2+
"parserOptions": {
3+
"ecmaVersion": 2017
4+
},
5+
"env": {
6+
"es6": true,
7+
"node": true
8+
},
9+
"extends": "eslint:recommended",
10+
"rules": {
11+
"no-console": "off",
12+
"indent": [
13+
"error",
14+
2,
15+
{
16+
"SwitchCase": 1
17+
}
18+
],
19+
"linebreak-style": [
20+
"off"
21+
],
22+
"quotes": [
23+
"warn",
24+
"single"
25+
],
26+
"semi": [
27+
"warn",
28+
"always"
29+
],
30+
"keyword-spacing": [
31+
"error", {
32+
"before": true,
33+
"after": true
34+
}
35+
],
36+
"space-before-blocks": [
37+
"error", {
38+
"functions":"always",
39+
"keywords": "always",
40+
"classes": "always"
41+
}
42+
],
43+
"space-before-function-paren": [
44+
"error", {
45+
"anonymous": "never",
46+
"named": "never",
47+
"asyncArrow": "always"
48+
}
49+
],
50+
"no-inner-declarations": [
51+
"off"
52+
],
53+
"prefer-const": [
54+
"error", {
55+
"destructuring": "any",
56+
"ignoreReadBeforeAssign": false
57+
}
58+
]
59+
}
60+
}

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Auto detect text files and perform LF normalization
2+
* text=auto

commands/approve.js

Lines changed: 134 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,134 @@
1+
const Discord = require('discord.js');
2+
3+
exports.run = async (client, message, args) => {
4+
try {
5+
const msg = await message.channel.send('Authorizing....');
6+
const resolvedUser = (args[0] !== undefined) ? message.guild.members.get(args[0].match(/[0-9]/g).join('')) : null;
7+
const botuser = resolvedUser ? message.guild.members.get(resolvedUser.id) : null;
8+
const thisUser = botuser.id;
9+
const thisRemove = botuser.roles.map(r => r.id);
10+
const thisChannel = client.channels.get('510616115144163333');
11+
const thisTime = new Date(message.createdAt).toLocaleString('en-us');
12+
13+
if (!botuser.user.bot) return msg.edit('I am not permitted to run this command on human members.');
14+
if (client.approved.get(thisUser)) return msg.edit('***Error: This client user is already approved.***');
15+
await botuser.removeRoles(thisRemove, 'Client user was approved by a SAA. (Type 1)');
16+
17+
18+
19+
if (args[1] === '1') {
20+
21+
client.approved.set(thisUser, {
22+
username: botuser.user.username,
23+
type: 1,
24+
staff: message.member.user.tag,
25+
time: thisTime
26+
});
27+
28+
await botuser.addRoles(['477624490134732811', '468759692605128724'], 'Client user was approved by a SAA. (Type 1)');
29+
30+
const embed1 = new Discord.RichEmbed();
31+
embed1.setTitle('CLIENT USER APPROVED');
32+
embed1.addField('Client User Name', botuser.user.username, true);
33+
embed1.addField('Client User Mention', `<@!${thisUser}>`, true);
34+
embed1.addField('Client User ID', thisUser, true);
35+
embed1.addField('Type', '1', true);
36+
embed1.addField('Approved By', message.member.user.tag, true);
37+
embed1.setFooter(client.user.username, client.user.avatarURL);
38+
embed1.setTimestamp();
39+
40+
thisChannel.send(embed1);
41+
message.delete();
42+
return msg.edit(`✅ ***Successfully verified ${botuser.user.tag} as type 1 client.***`);
43+
}
44+
45+
if (args[1] === '2') {
46+
client.approved.set(thisUser, {
47+
username: botuser.user.username,
48+
type: 2,
49+
staff: message.member.user.tag,
50+
time: thisTime
51+
});
52+
53+
await botuser.addRoles(['477624490134732811', '468759692605128724', '468759793599774731'], 'Client user was approved by a SAA. (Type 2)');
54+
55+
const embed2 = new Discord.RichEmbed();
56+
embed2.setTitle('CLIENT USER APPROVED');
57+
embed2.addField('Client User Name', botuser.user.username, true);
58+
embed2.addField('Client User Mention', `<@!${thisUser}>`, true);
59+
embed2.addField('Client User ID', thisUser, true);
60+
embed2.addField('Type', '2', true);
61+
embed2.addField('Approved By', message.member.user.tag, true);
62+
embed2.setFooter(client.user.username, client.user.avatarURL);
63+
embed2.setTimestamp();
64+
65+
thisChannel.send(embed2);
66+
message.delete();
67+
return msg.edit(`✅ ***Successfully verified ${botuser.user.tag} as type 2 client.***`);
68+
}
69+
70+
if (args[1] === '3') {
71+
client.approved.set(thisUser, {
72+
username: botuser.user.username,
73+
type: 3,
74+
staff: message.member.user.tag,
75+
time: thisTime
76+
});
77+
78+
await botuser.addRoles(['477624490134732811', '468759692605128724', '468759793599774731', '469565725762125824'], 'Client user was approved by a SAA. (Type 3)');
79+
80+
const embed3 = new Discord.RichEmbed();
81+
embed3.setTitle('CLIENT USER APPROVED');
82+
embed3.addField('Client User Name', botuser.user.username, true);
83+
embed3.addField('Client User Mention', `<@!${thisUser}>`, true);
84+
embed3.addField('Client User ID', thisUser, true);
85+
embed3.addField('Type', '3', true);
86+
embed3.addField('Approved By', message.member.user.tag, true);
87+
embed3.setFooter(client.user.username, client.user.avatarURL);
88+
embed3.setTimestamp();
89+
90+
thisChannel.send(embed3);
91+
message.delete();
92+
return msg.edit(`✅ ***Successfully verified ${botuser.user.tag} as type 3 client.***`);
93+
}
94+
95+
else {
96+
const errorEmbed = new Discord.RichEmbed();
97+
errorEmbed.setTitle('APPROVAL TYPES');
98+
errorEmbed.setDescription('USAGE: `approve [user] [type]`');
99+
errorEmbed.addField('Type 1', 'Standard bots (other boats, boats)', true);
100+
errorEmbed.addField('Type 2', 'Regular bots (other boats, boats, regular boats)', true);
101+
errorEmbed.addField('Type 3', 'Staff bots (other boats, boats, regular boats, staff boats)', true);
102+
errorEmbed.setFooter(client.user.username, client.user.avatarURL);
103+
errorEmbed.setTimestamp();
104+
return msg.edit(errorEmbed);
105+
}
106+
107+
} catch (err) {
108+
const errorEmbed = new Discord.RichEmbed();
109+
errorEmbed.setTitle('APPROVAL TYPES --- [ERROR]');
110+
errorEmbed.setDescription('USAGE: `approve [user] [type]`');
111+
errorEmbed.addField('Error', err, false);
112+
errorEmbed.addField('Type 1', 'Standard bots (other boats, boats)', true);
113+
errorEmbed.addField('Type 2', 'Regular bots (other boats, boats, regular boats)', true);
114+
errorEmbed.addField('Type 3', 'Staff bots (other boats, boats, regular boats, staff boats)', true);
115+
errorEmbed.setFooter(client.user.username, client.user.avatarURL);
116+
errorEmbed.setTimestamp();
117+
return message.channel.send(errorEmbed);
118+
}
119+
120+
121+
122+
};
123+
124+
exports.conf = {
125+
enabled: true,
126+
aliases: [],
127+
};
128+
129+
exports.help = {
130+
name: 'approve',
131+
category: 'System',
132+
description: 'Approves a client user.',
133+
usage: 'approve'
134+
};

commands/blacklist.js

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
const Discord = require('discord.js');
2+
3+
exports.run = async (client, message, args) => {
4+
const msg = await message.channel.send('Authorizing...');
5+
const resolvedUser = (args[0] !== undefined) ? message.guild.members.get(args[0].match(/[0-9]/g).join('')) : null;
6+
const botuser = resolvedUser ? message.guild.members.get(resolvedUser.id) : null;
7+
const thisUser = botuser.id;
8+
const thisChannel = client.channels.get('510616115144163333');
9+
10+
if (!botuser.user.bot) return msg.edit('I am not permitted to run this command on human members.');
11+
if (client.blackList.get(thisUser)) return msg.edit('***Error: This user is already blacklisted.***');
12+
13+
const embed = new Discord.RichEmbed();
14+
embed.setTitle('CLIENT USER BLACKLISTED');
15+
embed.addField('Client User Name', botuser.user.username, true);
16+
embed.addField('Client User Mention', `<@!${thisUser}>`, true);
17+
embed.addField('Client User ID', thisUser, true);
18+
embed.addField('Blacklisted By', message.member.user.tag, true);
19+
embed.setFooter(client.user.username, client.user.username);
20+
embed.setTimestamp();
21+
22+
thisChannel.send(embed);
23+
24+
if (client.approved.get(thisUser)) {
25+
client.approved.remove(thisUser);
26+
}
27+
28+
client.blackList.set(thisUser, {
29+
reason: args[1],
30+
staff: message.member.user.tag
31+
});
32+
33+
await botuser.ban({
34+
days: 7,
35+
reason: 'Client user was denied by an SAA. (softban)'
36+
});
37+
38+
39+
msg.edit(`✅ ***${botuser.user.tag} has been denied.***`);
40+
};
41+
42+
exports.conf = {
43+
enabled: true,
44+
aliases: [],
45+
};
46+
47+
exports.help = {
48+
name: 'deny',
49+
category: 'System',
50+
description: 'Denies a client user.',
51+
usage: 'deny'
52+
};

commands/data.js

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
const Discord = require('discord.js');
2+
3+
exports.run = async (client, message, args) => {
4+
const msg = await message.channel.send('Authorizing...');
5+
const resolvedUser = (args[0] !== undefined) ? message.guild.members.get(args[0].match(/[0-9]/g).join('')) : null;
6+
const botuser = resolvedUser ? message.guild.members.get(resolvedUser.id) : null;
7+
const thisUser = botuser.id;
8+
9+
10+
if (!botuser.user.bot) return msg.edit('***Error: I do not have data on human members.');
11+
12+
const embed = new Discord.RichEmbed();
13+
embed.setTitle('CLIENT USER DATA');
14+
try {
15+
embed.setThumbnail(botuser.user.avatarURL);
16+
} catch (err) {
17+
embed.setThumbnail(client.user.avatarURL);
18+
}
19+
try {
20+
embed.addField('Client User Name', client.approved.get(thisUser, 'username'), true);
21+
} catch (err) {
22+
embed.addField('Client User Name', err, true);
23+
}
24+
try {
25+
embed.addField('Client User ID', thisUser, true);
26+
} catch (err) {
27+
embed.addField('Client User ID', err, true);
28+
}
29+
try {
30+
embed.addField('Approval Type', client.approved.get(thisUser, 'type'), true);
31+
} catch (err) {
32+
embed.addField('Approval Type', err, true);
33+
}
34+
try {
35+
embed.addField('Approved By', client.approved.get(thisUser, 'staff'), true);
36+
} catch (err) {
37+
embed.addField('Approved By', err, true);
38+
}
39+
try {
40+
embed.addField('Approved At', client.approved.get(thisUser, 'time'), true);
41+
} catch (err) {
42+
embed.addField('Approved At', err, true);
43+
}
44+
embed.setFooter(client.user.username, client.user.avatarURL);
45+
embed.setTimestamp();
46+
47+
msg.edit(embed);
48+
};
49+
50+
exports.conf = {
51+
enabled: true,
52+
aliases: [],
53+
};
54+
55+
exports.help = {
56+
name: 'data',
57+
category: 'System',
58+
description: 'Gets data for an approved client user.',
59+
usage: 'data'
60+
};

commands/deny.js

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
const Discord = require('discord.js');
2+
3+
exports.run = async (client, message, args) => {
4+
const msg = await message.channel.send('Authorizing...');
5+
const resolvedUser = (args[0] !== undefined) ? message.guild.members.get(args[0].match(/[0-9]/g).join('')) : null;
6+
const botuser = resolvedUser ? message.guild.members.get(resolvedUser.id) : null;
7+
const thisUser = botuser.id;
8+
const thisChannel = client.channels.get('510616115144163333');
9+
10+
if (!botuser.user.bot) return msg.edit('I am not permitted to run this command on human members.');
11+
12+
const embed = new Discord.RichEmbed();
13+
embed.setTitle('CLIENT USER DENIED');
14+
embed.addField('Client User Name', botuser.user.username, true);
15+
embed.addField('Client User Mention', `<@!${thisUser}>`, true);
16+
embed.addField('Client User ID', thisUser, true);
17+
embed.addField('Denied By', message.member.user.tag, true);
18+
embed.setFooter(client.user.username, client.user.username);
19+
embed.setTimestamp();
20+
21+
thisChannel.send(embed);
22+
23+
if (client.approved.get(thisUser)) {
24+
client.approved.remove(thisUser);
25+
}
26+
27+
await botuser.ban({
28+
days: 7,
29+
reason: 'Client user was denied by an SAA. (softban)'
30+
});
31+
32+
await message.guild.unban(botuser, {
33+
reason: 'Client user was denied by an SAA. (softban)'
34+
});
35+
36+
msg.edit(`✅ ***${botuser.user.tag} has been denied.***`);
37+
};
38+
39+
exports.conf = {
40+
enabled: true,
41+
aliases: [],
42+
};
43+
44+
exports.help = {
45+
name: 'deny',
46+
category: 'System',
47+
description: 'Denies a client user.',
48+
usage: 'deny'
49+
};

0 commit comments

Comments
 (0)