Skip to content

Commit 463394c

Browse files
removed MongoDB Config Getters & Setters (-> file-based config), renamed queryMember to setMemberEntry, made Correct#correct not static & added Guild-check to Warns#warnCount
1 parent 9b44875 commit 463394c

File tree

11 files changed

+50
-277
lines changed

11 files changed

+50
-277
lines changed

src/main/java/com/javadiscord/javabot/commands/configuation/config/Config.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,12 @@
33
import com.javadiscord.javabot.commands.DelegatingCommandHandler;
44
import com.javadiscord.javabot.commands.Responses;
55
import com.javadiscord.javabot.commands.configuation.config.subcommands.*;
6-
import com.javadiscord.javabot.commands.moderation.Embed;
76
import com.javadiscord.javabot.other.Constants;
87
import com.javadiscord.javabot.other.Embeds;
9-
import net.dv8tion.jda.api.EmbedBuilder;
108
import net.dv8tion.jda.api.Permission;
119
import net.dv8tion.jda.api.events.interaction.SlashCommandEvent;
1210
import net.dv8tion.jda.api.requests.restaction.interactions.ReplyAction;
1311

14-
import java.util.Date;
15-
1612
// TODO: Replace with file-based config or at least something much less convoluted.
1713
@Deprecated(forRemoval = true)
1814
public class Config extends DelegatingCommandHandler {

src/main/java/com/javadiscord/javabot/commands/moderation/ClearWarns.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public ReplyAction handle(SlashCommandEvent event) {
2323

2424
Member member = event.getOption("user").getAsMember();
2525

26-
new Database().queryMember(member.getId(), "warns", 0);
26+
new Database().setMemberEntry(member.getId(), "warns", 0);
2727
new Warn().deleteAllDocs(member.getId());
2828

2929
var e = new EmbedBuilder()

src/main/java/com/javadiscord/javabot/commands/moderation/Kick.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public ReplyAction handle(SlashCommandEvent event) {
4444
try {
4545

4646
member.kick(reason).queueAfter(3, TimeUnit.SECONDS);
47-
new Database().queryMember(member.getId(), "warns", 0);
47+
new Database().setMemberEntry(member.getId(), "warns", 0);
4848

4949
new Warn().deleteAllDocs(member.getId());
5050

src/main/java/com/javadiscord/javabot/commands/moderation/Warns.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import com.google.gson.JsonParser;
55
import com.javadiscord.javabot.commands.SlashCommandHandler;
66
import com.javadiscord.javabot.other.Constants;
7+
import com.mongodb.BasicDBObject;
78
import com.mongodb.client.MongoCollection;
89
import com.mongodb.client.MongoCursor;
910
import com.mongodb.client.MongoDatabase;
@@ -25,7 +26,11 @@ public long warnCount (Member member) {
2526
MongoDatabase database = mongoClient.getDatabase("userdata");
2627
MongoCollection<Document> warns = database.getCollection("warns");
2728

28-
return warns.countDocuments(eq("user_id", member.getId()));
29+
BasicDBObject criteria = new BasicDBObject()
30+
.append("guild_id", member.getGuild().getId())
31+
.append("user_id", member.getId());
32+
33+
return warns.countDocuments(criteria);
2934
}
3035

3136
@Override

src/main/java/com/javadiscord/javabot/commands/other/Question.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
import net.dv8tion.jda.api.requests.restaction.interactions.ReplyAction;
1616
import org.bson.Document;
1717

18-
import java.util.Arrays;
1918
import java.util.List;
2019

2120
import static com.javadiscord.javabot.events.Startup.mongoClient;

src/main/java/com/javadiscord/javabot/commands/other/qotw/ClearQOTW.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public ReplyAction handle(SlashCommandEvent event) {
2020
}
2121

2222
Member member = event.getOption("user").getAsMember();
23-
new Database().queryMember(member.getId(), "qotwpoints", 0);
23+
new Database().setMemberEntry(member.getId(), "qotwpoints", 0);
2424
var e = new EmbedBuilder()
2525
.setAuthor(member.getUser().getAsTag() + " | QOTW-Points cleared", null, member.getUser().getEffectiveAvatarUrl())
2626
.setColor(Constants.RED)
Lines changed: 23 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,47 +1,40 @@
11
package com.javadiscord.javabot.commands.other.qotw;
22

3-
import com.javadiscord.javabot.Bot;
43
import com.javadiscord.javabot.other.Constants;
54
import com.javadiscord.javabot.other.Database;
6-
import com.javadiscord.javabot.other.Embeds;
5+
import com.javadiscord.javabot.other.Misc;
76
import net.dv8tion.jda.api.EmbedBuilder;
87
import net.dv8tion.jda.api.entities.Member;
9-
import net.dv8tion.jda.api.entities.TextChannel;
108
import net.dv8tion.jda.api.events.interaction.ButtonClickEvent;
119

1210
import java.util.Date;
1311

1412
public class Correct {
1513

16-
public static void correct(ButtonClickEvent event, Member member) {
14+
public void correct(ButtonClickEvent event, Member member) {
1715

18-
String check;
19-
TextChannel tc = Bot.config.get(event.getGuild()).getModeration().getLogChannel();
20-
check = event.getGuild().getEmotesByName("check", false).get(0).getAsMention();
16+
int qotwPoints = new Database().getMemberInt(member, "qotwpoints") + 1;
17+
new Database().setMemberEntry(member.getId(), "qotwpoints", qotwPoints);
2118

22-
int qotwPoints = new Database().getMemberInt(member, "qotwpoints");
23-
new Database().queryMember(member.getId(), "qotwpoints", qotwPoints + 1);
24-
25-
EmbedBuilder eb = new EmbedBuilder()
26-
.setAuthor("Question of the Week", null, member.getUser().getEffectiveAvatarUrl())
19+
var eb = new EmbedBuilder()
20+
.setAuthor(member.getUser().getAsTag() + " | QOTW-Point added", null, member.getUser().getEffectiveAvatarUrl())
2721
.setColor(Constants.GREEN)
28-
.setDescription("Your answer was correct! " + check + "\nYou've been granted **1 QOTW-Point!** (Total: " + (qotwPoints + 1) + ")")
29-
.setTimestamp(new Date().toInstant());
30-
31-
try {
32-
member.getUser().openPrivateChannel().complete().sendMessage(eb.build()).queue();
33-
34-
EmbedBuilder emb = new EmbedBuilder()
35-
.setAuthor(member.getUser().getAsTag() + " | QOTW-Point added", null, member.getUser().getEffectiveAvatarUrl())
36-
.setColor(Constants.GREEN)
37-
.addField("Total QOTW-Points", "```" + (qotwPoints + 1) + "```", true)
38-
.addField("Rank", "```#" + new Leaderboard().getQOTWRank(event.getGuild(), member.getId()) + "```", true)
39-
.setFooter("ID: " + member.getId())
40-
.setTimestamp(new Date().toInstant());
41-
tc.sendMessageEmbeds(emb.build()).queue();
42-
43-
} catch (Exception e) {
44-
tc.sendMessageEmbeds(Embeds.emptyError("```Couldn't send message <:abort:759740784882089995> (" + member.getUser().getAsTag() + ")```", event.getUser())).queue();
45-
}
22+
.addField("Total QOTW-Points", "```" + qotwPoints + "```", true)
23+
.addField("Rank", "```#" + new Leaderboard().getQOTWRank(event.getGuild(), member.getId()) + "```", true)
24+
.setFooter("ID: " + member.getId())
25+
.setTimestamp(new Date().toInstant())
26+
.build();
27+
Misc.sendToLog(event.getGuild(), eb);
28+
29+
if (!member.getUser().hasPrivateChannel()) Misc.sendToLog(event.getGuild(), "> Couldn't send Message to User " + member.getUser().getAsTag());
30+
member.getUser().openPrivateChannel().complete()
31+
.sendMessageEmbeds(new EmbedBuilder()
32+
.setAuthor("Question of the Week", null, member.getUser().getEffectiveAvatarUrl())
33+
.setColor(Constants.GREEN)
34+
.setDescription("Your answer was correct! " + Constants.SUCCESS +
35+
"\nYou've been granted **1 QOTW-Point!** (Total: " + qotwPoints + ")")
36+
.setTimestamp(new Date().toInstant())
37+
.build())
38+
.queue();
4639
}
4740
}

src/main/java/com/javadiscord/javabot/events/SubmissionListener.java

Lines changed: 2 additions & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import com.mongodb.client.MongoCollection;
99
import com.mongodb.client.MongoDatabase;
1010
import net.dv8tion.jda.api.EmbedBuilder;
11-
import net.dv8tion.jda.api.entities.Emoji;
1211
import net.dv8tion.jda.api.entities.Guild;
1312
import net.dv8tion.jda.api.entities.Message;
1413
import net.dv8tion.jda.api.events.interaction.ButtonClickEvent;
@@ -73,7 +72,7 @@ public void dmSubmissionCancel (ButtonClickEvent event) {
7372

7473
public void submissionApprove (ButtonClickEvent event, String userID) {
7574

76-
Correct.correct(event, event.getGuild().getMemberById(userID));
75+
new Correct().correct(event, event.getGuild().getMemberById(userID));
7776

7877
event.getHook().editOriginalEmbeds(event.getMessage().getEmbeds().get(0))
7978
.setActionRows(ActionRow.of(
@@ -100,16 +99,11 @@ public void onPrivateMessageReceived(PrivateMessageReceivedEvent event) {
10099
if (event.getAuthor().isBot()) return;
101100

102101
String message = event.getMessage().getContentDisplay();
103-
String[] args = message.split("\\s+");
104-
105-
if (args[0].startsWith("!")) return;
106-
107102
Guild guild = Startup.preferredGuild;
108103

109104
if (!Bot.config.get(guild).getQotw().isDmEnabled()) return;
110105

111106
try {
112-
113107
EmbedBuilder submissionEb = new EmbedBuilder()
114108
.setColor(Constants.GRAY)
115109
.setAuthor("Question of the Week | Submission", null, event.getAuthor().getEffectiveAvatarUrl())
@@ -149,67 +143,7 @@ public void onPrivateMessageReceived(PrivateMessageReceivedEvent event) {
149143

150144
collection.insertOne(doc);
151145
});
152-
153-
// EventWaiter waiter = new EventWaiter();
154-
// event.getJDA().addEventListener(waiter);
155-
//
156-
// waiter.waitForEvent(
157-
// ButtonClickEvent.class,
158-
//
159-
// e -> e.getChannel().getType() == ChannelType.PRIVATE,
160-
//
161-
// e -> {
162-
//
163-
// String[] id = e.getComponentId().split(":");
164-
// String authorId = id[0];
165-
//
166-
// if (!authorId.equals(e.getUser().getId())) return;
167-
//
168-
// switch (id[2]) {
169-
//
170-
// case "send":
171-
//
172-
// EmbedBuilder submittedEb = new EmbedBuilder()
173-
// .setColor(Constants.GRAY)
174-
// .setAuthor("Submission by " + e.getUser().getAsTag(), null, e.getUser().getEffectiveAvatarUrl())
175-
// .setDescription(message)
176-
// .setFooter("ID: " + e.getUser().getId())
177-
// .setTimestamp(new Date().toInstant());
178-
//
179-
// submissionChannel.sendMessage(new MessageBuilder().setEmbed(submittedEb.build()).setActionRows(ActionRow.of(
180-
// Button.success(e.getUser().getId() + ":submission:approve", "Approve"),
181-
// Button.danger(e.getUser().getId() + ":submission:decline", "Decline"))).build())
182-
//
183-
// .queue(m -> {
184-
// MongoCollection<Document> submission_messages = database.getCollection("submission_messages");
185-
//
186-
// Document doc = new Document()
187-
// .append("guild_id", m.getGuild().getId())
188-
// .append("channel_id", m.getChannel().getId())
189-
// .append("message_id", m.getId())
190-
// .append("user_id", event.getAuthor().getId());
191-
//
192-
// submission_messages.insertOne(doc);
193-
// });
194-
//
195-
// e.getHook().editOriginalEmbeds(e.getMessage().getEmbeds().get(0))
196-
// .setActionRows(ActionRow.of(
197-
// Button.success(authorId + ":dm-submission:send", "Submission sent").asDisabled())
198-
// )
199-
// .queue();
200-
// break;
201-
//
202-
// case "cancel":
203-
//
204-
// e.getHook().editOriginalEmbeds(e.getMessage().getEmbeds().get(0))
205-
// .setActionRows(ActionRow.of(
206-
// Button.danger(authorId + ":dm-submission:cancel", "Process canceled").asDisabled())
207-
// )
208-
// .queue();
209-
// break;
210-
// }});
211-
212-
} catch (NullPointerException ignored) { }
146+
} catch (NullPointerException e) { e.printStackTrace(); }
213147
}
214148
}
215149

src/main/java/com/javadiscord/javabot/jam/subcommands/admin/ListThemesSubcommand.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.javadiscord.javabot.jam.subcommands.admin;
22

3-
import com.javadiscord.javabot.Bot;
43
import com.javadiscord.javabot.jam.dao.JamThemeRepository;
54
import com.javadiscord.javabot.jam.model.Jam;
65
import com.javadiscord.javabot.jam.model.JamTheme;

0 commit comments

Comments
 (0)