async Task <bool> IPermissionConfig.WhitelistModule(ITextChannel channel, ModuleInfo module) { var ch = QueryChannel(channel); if (ch != null) { var n = QueryModule(module); if (n == null) { n = new ConfigModule { ModuleName = module.Name }; Modules.Add(n); await SaveChangesAsync().ConfigureAwait(false);; } var hasThis = QueryChannelModules().Any(m => m.Module.Id == n.Id && m.Channel.Id == ch.Id); if (!hasThis) { var cm = new ChannelModule <TChannel, TUser> { Channel = ch, Module = n }; ChannelModules.Add(cm); //ch.WhiteListedModules.Add(cm); await SaveChangesAsync().ConfigureAwait(false);; } return(!hasThis); } return(false); }
async Task <bool> IPermissionConfig.WhitelistModuleGuild(IGuild guild, ModuleInfo module) { var gui = QueryGuild(guild); if (gui != null) { var n = QueryModule(module); if (n == null) { n = new ConfigModule { ModuleName = module.Name }; Modules.Add(n); await SaveChangesAsync().ConfigureAwait(false); } var hasThis = QueryGuildModules().Any(m => m.Module.Id == n.Id && m.Guild.Id == gui.Id); if (!hasThis) { var gm = new GuildModule <TGuild, TChannel, TUser> { Guild = gui, Module = n }; GuildModules.Add(gm); //gui.WhiteListedModules.Add(gm); await SaveChangesAsync().ConfigureAwait(false); } return(!hasThis); } return(false); }
Task <bool> IPermissionConfig.WhitelistModule(ITextChannel channel, ModuleInfo module) { var ch = QueryChannel(channel); if (ch != null) { var n = QueryModule(module); if (n == null) { n = new ConfigModule { ModuleName = module.Name }; Insert(n); //SaveChanges(); } var mods = ch.WhiteListedModules; var hasThis = mods.Any(m => m.Id == n.Id); if (!hasThis) { mods.Add(n); //ch.WhiteListedModules.Add(cm); //SaveChanges(); } return(Task.FromResult(!hasThis)); } return(Task.FromResult(false)); }
Task <bool> IPermissionConfig.WhitelistModuleGuild(IGuild guild, ModuleInfo module) { var gui = QueryGuild(guild); if (gui != null) { var n = QueryModule(module); if (n == null) { n = new ConfigModule { ModuleName = module.Name }; Insert(n); //SaveChanges(); } var mods = gui.WhiteListedModules; var hasThis = mods.Any(m => m.Id == n.Id); if (!mods.Any(m => m.Id == n.Id)) { mods.Add(n); //gui.WhiteListedModules.Add(gm); //SaveChanges(); } return(Task.FromResult(!hasThis)); } return(Task.FromResult(false)); }
Task <bool> IPermissionConfig.WhitelistModuleGuild(IGuild guild, string moduleName) { var gui = Guilds.Include(g => g.WhiteListedModules).Single(g => g.GuildId == guild.Id); var mod = _modules.SingleOrDefault(m => m.Name == moduleName); if (mod != null) { var n = Modules.SingleOrDefault(m => m.ModuleName == moduleName); if (n == null) { n = new ConfigModule { ModuleName = moduleName }; Modules.Add(n); } var hasThis = gui.WhiteListedModules.Any(m => m.Id == n.Id); if (!hasThis) { gui.WhiteListedModules.Add(n); } return(Task.FromResult(!hasThis)); } return(Task.FromResult(false)); }
Task <bool> IPermissionConfig.WhitelistModule(ITextChannel channel, string moduleName) { var chan = Channels.Include(c => c.WhiteListedModules).Single(c => c.ChannelId == channel.Id); var mod = _modules.SingleOrDefault(m => m.Name == moduleName); if (mod != null) { var n = Modules.SingleOrDefault(m => m.ModuleName == moduleName); if (n == null) { n = new ConfigModule { ModuleName = moduleName }; Modules.Add(n); } var hasThis = chan.WhiteListedModules.Any(m => m.Id == n.Id); if (!hasThis) { chan.WhiteListedModules.Add(n); } return(Task.FromResult(!hasThis)); } return(Task.FromResult(false)); }