Added more functionality for admins
This commit is contained in:
@@ -43,6 +43,7 @@ import org.springframework.stereotype.Service;
|
||||
|
||||
import net.dv8tion.jda.api.entities.ChannelType;
|
||||
import net.dv8tion.jda.api.entities.TextChannel;
|
||||
import net.dv8tion.jda.api.events.ExceptionEvent;
|
||||
import net.dv8tion.jda.api.events.guild.GuildJoinEvent;
|
||||
import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent;
|
||||
import net.dv8tion.jda.api.events.message.react.MessageReactionAddEvent;
|
||||
@@ -51,7 +52,7 @@ import net.locusworks.discord.eighttrack.audio.Mp3UploadHandler;
|
||||
import net.locusworks.discord.eighttrack.database.entities.DiscordGuild;
|
||||
import net.locusworks.discord.eighttrack.services.ConfigurationService;
|
||||
import net.locusworks.discord.eighttrack.services.GuildMusicService;
|
||||
import net.locusworks.discord.eighttrack.services.GuildSongRepoService;
|
||||
import net.locusworks.discord.eighttrack.services.RepositoryService;
|
||||
import net.locusworks.logger.ApplicationLogger;
|
||||
import net.locusworks.logger.ApplicationLoggerFactory;
|
||||
|
||||
@@ -69,7 +70,7 @@ public class DiscordEventHandler extends ListenerAdapter {
|
||||
private Mp3UploadHandler uploadHandler;
|
||||
|
||||
@Autowired
|
||||
private GuildSongRepoService guildSongRepoService;
|
||||
private RepositoryService guildSongRepoService;
|
||||
|
||||
@Autowired
|
||||
private ReactionHandler reactionHandler;
|
||||
@@ -107,7 +108,10 @@ public class DiscordEventHandler extends ListenerAdapter {
|
||||
try {
|
||||
long guildId = event.getGuild().getIdLong();
|
||||
DiscordGuild discordGuild = guildSongRepoService.getGuildRepo().findByGuildId(guildId);
|
||||
if (discordGuild != null) return;
|
||||
if (discordGuild != null) {
|
||||
guildSongRepoService.logEntry(guildId, "Eight Track joined guild %s", discordGuild.getGuildName());
|
||||
return;
|
||||
}
|
||||
|
||||
logger.debug("Joining Server: " + event.getGuild().getName());
|
||||
|
||||
@@ -117,8 +121,12 @@ public class DiscordEventHandler extends ListenerAdapter {
|
||||
discordGuild.setDateJoined(new Date());
|
||||
|
||||
guildSongRepoService.getGuildRepo().save(discordGuild);
|
||||
|
||||
guildSongRepoService.logEntry(guildId, "Eight Track joined guild %s", discordGuild.getGuildName());
|
||||
|
||||
} catch (Exception ex) {
|
||||
logger.error("Unable to persist server information to database: " + ex.getMessage(), ex);
|
||||
guildSongRepoService.logEntry(event.getGuild().getIdLong(), ex, "Unable to persist guild server info to database: %s", ex.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -128,9 +136,16 @@ public class DiscordEventHandler extends ListenerAdapter {
|
||||
try {
|
||||
onGuildMessageReceivedHelper(event);
|
||||
} catch (Throwable t) {
|
||||
guildSongRepoService.logEntry(event.getGuild().getIdLong(), t, "An error occured: %s", t.getMessage());
|
||||
logger.error(t);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onException(ExceptionEvent event) {
|
||||
logger.error("A general exception occured: " + event.getCause().getMessage());
|
||||
logger.error(event.getCause());
|
||||
}
|
||||
|
||||
private void onGuildMessageReceivedHelper(GuildMessageReceivedEvent event) throws Exception {
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ import net.locusworks.discord.eighttrack.database.entities.GuildPlaylistSong;
|
||||
import net.locusworks.discord.eighttrack.database.entities.GuildSong;
|
||||
import net.locusworks.discord.eighttrack.database.entities.Song;
|
||||
import net.locusworks.discord.eighttrack.listeners.ReactionListener;
|
||||
import net.locusworks.discord.eighttrack.services.GuildSongRepoService;
|
||||
import net.locusworks.discord.eighttrack.services.RepositoryService;
|
||||
import net.locusworks.discord.eighttrack.utils.Reactions;
|
||||
import net.locusworks.logger.ApplicationLogger;
|
||||
import net.locusworks.logger.ApplicationLoggerFactory;
|
||||
@@ -87,7 +87,7 @@ public class GuildMusicHandler {
|
||||
|
||||
private Consumer<Long> callback;
|
||||
private Mp3UploadHandler uploadHandler;
|
||||
private GuildSongRepoService guildSongRepoService;
|
||||
private RepositoryService guildSongRepoService;
|
||||
private ReactionHandler reactionHandler;
|
||||
private long guildId;
|
||||
|
||||
@@ -95,7 +95,7 @@ public class GuildMusicHandler {
|
||||
|
||||
private TrackManager trackManager;
|
||||
|
||||
public GuildMusicHandler(Path musicDir, long guildId, Mp3UploadHandler uploadHandler, ReactionHandler reactionHandler, GuildSongRepoService guildSongRepoService) throws IOException {
|
||||
public GuildMusicHandler(Path musicDir, long guildId, Mp3UploadHandler uploadHandler, ReactionHandler reactionHandler, RepositoryService guildSongRepoService) throws IOException {
|
||||
this.logger = ApplicationLoggerFactory.getLogger(GuildMusicHandler.class);
|
||||
this.playing = new AtomicBoolean(false);
|
||||
this.musicDir = musicDir;
|
||||
@@ -515,6 +515,10 @@ public class GuildMusicHandler {
|
||||
builder.addField("ID", gs.getUuid(), true);
|
||||
|
||||
MessageEmbed embed = builder.build();
|
||||
|
||||
try {
|
||||
guildSongRepoService.logEntry(event.getGuild().getIdLong(), "%s uploaded", result);
|
||||
} catch (Exception ex) {}
|
||||
|
||||
return embed;
|
||||
}
|
||||
@@ -581,8 +585,7 @@ public class GuildMusicHandler {
|
||||
}
|
||||
sb.append("```");
|
||||
event.getChannel().sendMessage("**" + "Current songs in playlists " + playlist + " for " + event.getMember().getAsMention() + "**").queue((succcess)->
|
||||
event.getChannel().sendMessage(sb.toString()).queue()
|
||||
);
|
||||
event.getChannel().sendMessage(sb.toString()).queue());
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user