Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,12 @@ public class ModerationConfig extends GuildConfigItem {
/**
* Text that is sent to users when they're banned.
*/
private String banMessageText = "Looks like you've been banned from the Java Discord. If you want to appeal this decision please fill out our form at <https://airtable.com/shrp5V4H1U5TYOXyC>.";
private String banMessageText = "Looks like you've been banned from the Discord Java Community. If you want to appeal this decision please fill out our form at <https://airtable.com/shrp5V4H1U5TYOXyC>.";

/**
* Text that is sent to users when they're banned.
*/
private String kickMessageText = "Looks like you've been kicked from the Discord Java Community. If you want to, you should be able to rejoin at <https://join.discordjug.net/> but please ensure you are following the rules if you do.";

/**
* A list of rules that can result in a message being blocked or similar.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -311,11 +311,14 @@ private boolean isBanned(@NotNull Guild guild, long userId) {
*/
public void kick(User user, String reason, Member kickedBy, MessageChannel channel, boolean quiet) {
MessageEmbed kickEmbed = buildKickEmbed(user, kickedBy, reason);
kickedBy.getGuild().kick(user).queue(s -> {
notificationService.withUser(user).sendDirectMessage(c -> c.sendMessageEmbeds(kickEmbed));
notificationService.withGuild(kickedBy.getGuild()).sendToModerationLog(c -> c.sendMessageEmbeds(kickEmbed));
if (!quiet) channel.sendMessageEmbeds(kickEmbed).queue();
}, ExceptionLogger::capture);
user.openPrivateChannel()
.flatMap(c -> c.sendMessageEmbeds(kickEmbed).setContent(getModerationConfig(kickedBy).getKickMessageText()))
.mapToResult() // errors in sending DMs should still result in the kicking logic being executed
.queue(_ -> {
kickedBy.getGuild().kick(user).queue();
notificationService.withGuild(kickedBy.getGuild()).sendToModerationLog(c -> c.sendMessageEmbeds(kickEmbed));
if (!quiet) channel.sendMessageEmbeds(kickEmbed).queue();
});
}

public void sendKickGuildNotification(User user, String reason, Member moderator) {
Expand Down