// • ▌ ▄ ·. ▄▄▄· ▄▄ • ▪ ▄▄· ▄▄▄▄· ▄▄▄· ▐▄▄▄ ▄▄▄ . // ·██ ▐███▪▐█ ▀█ ▐█ ▀ ▪██ ▐█ ▌▪▐█ ▀█▪▐█ ▀█ •█▌ ▐█▐▌· // ▐█ ▌▐▌▐█·▄█▀▀█ ▄█ ▀█▄▐█·██ ▄▄▐█▀▀█▄▄█▀▀█ ▐█▐ ▐▌▐▀▀▀ // ██ ██▌▐█▌▐█ ▪▐▌▐█▄▪▐█▐█▌▐███▌██▄▪▐█▐█ ▪▐▌██▐ █▌▐█▄▄▌ // ▀▀ █▪▀▀▀ ▀ ▀ ·▀▀▀▀ ▀▀▀·▀▀▀ ·▀▀▀▀ ▀ ▀ ▀▀ █▪ ▀▀▀ // Magicbane Emulator Project © 2013 - 2022 // www.magicbane.com package discord.handlers; import discord.DiscordAccount; import discord.MagicBot; import net.dv8tion.jda.api.entities.User; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; import org.pmw.tinylog.Logger; import java.util.List; public class LookupRequestHandler { public static void handleRequest(MessageReceivedEvent event, String[] args) { String searchString = ""; String outString; // Early exit if database unavailable or is not an admin if (MagicBot.isAdminEvent(event) == false) return; // No argument supplied? if (args.length != 1) return; searchString = args[0].toLowerCase(); List discordAccounts = MagicBot.database.getAccountsByDiscordName(searchString, false); if (discordAccounts.isEmpty()) { MagicBot.sendResponse(event, "No accounts found matching string: " + searchString); return; } if (discordAccounts.size() >= 20) { MagicBot.sendResponse(event, discordAccounts.size() + "Sorry more than 20 records were returned! " + searchString); return; } // Valid request return results Logger.info(event.getAuthor().getName() + " lookup on account:" + searchString); outString = "The follow accounts matched: " + searchString + "\n\n" + "-------------------\n"; for (DiscordAccount userAccount : discordAccounts) { // Ternary became a bitch, so broke this out. User discordUser = MagicBot.jda.getUserById(userAccount.discordAccount); if (discordUser != null) outString += discordUser.getName() + "/" + userAccount.discordAccount + " "; else outString += userAccount.discordAccount + " *N/A* "; outString += userAccount.gameAccountName + " " + userAccount.status.name() + " "; outString += "\n"; } MagicBot.sendResponse(event, outString); } }