public ThreadEventArgs(DiscordThread thread) { Thread = thread; }
private async Task <bool> CreateDiscordChannelDBEntry() { // NO DM Tracking if (SocketGuildChannel == null) { return(false); } // Ensure CategoryChannel is created await CreateDiscordChannelCategoryDBEntry(); var discordChannel = new DiscordChannel() { DiscordChannelId = SocketGuildChannel.Id, ChannelName = SocketGuildChannel.Name, DiscordServerId = SocketGuild.Id, ParentDiscordChannelId = SocketCategoryChannel?.Id, IsCategory = false, Position = SocketGuildChannel.Position }; var dbDiscordChannel = DatabaseManager.GetDiscordChannel(SocketGuildChannel.Id); if (dbDiscordChannel == null) { var newDiscordChannelEntry = DatabaseManager.CreateDiscordChannel(discordChannel); return(newDiscordChannelEntry != null); } else { DatabaseManager.UpdateDiscordChannel(discordChannel); } // Create Thread if (SocketThreadChannel != null) { var discordThread = new DiscordThread() { DiscordChannelId = SocketThreadChannel.ParentChannel.Id, ThreadName = SocketThreadChannel.Name, DiscordThreadId = SocketThreadChannel.Id, IsArchived = SocketThreadChannel.IsArchived, IsLocked = SocketThreadChannel.IsLocked, IsPrivateThread = SocketThreadChannel.IsPrivateThread, IsNsfw = SocketThreadChannel.IsNsfw, MemberCount = SocketThreadChannel.MemberCount, ThreadType = (int)SocketThreadChannel.Type }; var dbDiscordThread = DatabaseManager.GetDiscordThread(SocketThreadChannel.Id); if (dbDiscordThread == null) { var newDiscordThreadEntry = DatabaseManager.CreateDiscordThread(discordThread); return(newDiscordThreadEntry != null); } else { DatabaseManager.UpdateDiscordThread(discordThread); } } return(true); }