public static bool RemoveChannel(DiscordChannel channel) { using (LiteDatabase UserDatabase = new LiteDatabase("channels.db")) { // Get user collection var col = UserDatabase.GetCollection <FeedChannel>("channels"); int i = 0; FeedChannel query = col.FindById(FeedChannel.GetHashID(channel.Id, i)); while (query != null && query.ChannelID != channel.Id) { query = col.FindById(FeedChannel.GetHashID(channel.Id, i)); i++; } bool hasDeleted = false; if (query != null && !query.IsFiller) { Console.WriteLine("Delete.."); hasDeleted = col.Delete(FeedChannel.GetHashID(channel.Id, i)); Console.WriteLine("Deleted"); } if (hasDeleted) { return(true); } else { return(false); } } }
public static bool AddChannel(DiscordChannel channel) { using (LiteDatabase UserDatabase = new LiteDatabase("channels.db")) { var col = UserDatabase.GetCollection <FeedChannel>("channels"); int i = 0; Console.WriteLine("Query"); FeedChannel query = col.FindById(FeedChannel.GetHashID(channel.Id, i)); Console.WriteLine("Queried"); while (query != null && query.ChannelID != channel.Id) { Console.WriteLine("Next.."); query = col.FindById(FeedChannel.GetHashID(channel.Id, i)); i++; } if (query == null) { Console.WriteLine("New Channel"); if (query != null && query.IsFiller) { Console.WriteLine("Delete filler"); col.Delete(FeedChannel.GetHashID(channel.Id, i)); } Console.WriteLine("Create Feed Channel"); var fc = new FeedChannel(channel, i); Console.WriteLine("Insert Channel"); col.Insert(fc); Console.WriteLine("Ensure Index"); col.EnsureIndex("Id"); return(true); } else { return(false); } } }