public static async Task RemoveMuteAsync(ulong userId, ulong guildId) { var muted = await BaseRepository <Mute> .SearchFor(c => c.UserId == userId && c.GuildId == guildId).FirstOrDefaultAsync(); if (muted != null) { await BaseRepository <Mute> .DeleteAsync(muted); } }
public static async Task <Gang> FetchGangAsync(string gangName, ulong guildId) { var gang = await BaseRepository <Gang> .SearchFor(c => c.Name.ToLower() == gangName.ToLower() && c.GuildId == guildId).FirstOrDefaultAsync(); if (gang == null) { throw new Exception("This gang does not exist."); } return(gang); }
public static async Task <Gang> FetchGangAsync(ulong userId, ulong guildId) { var gang = await BaseRepository <Gang> .SearchFor(c => (c.LeaderId == userId || c.Members.Any(x => x.UserId == userId)) && c.GuildId == guildId).FirstOrDefaultAsync(); if (gang == null) { throw new Exception("This user is not in a gang."); } return(gang); }
public static async Task <Gang> FetchGangAsync(SocketCommandContext context) { var gang = await BaseRepository <Gang> .SearchFor(c => (c.LeaderId == context.User.Id /*|| c.Members.Any(x => x.UserId == context.User.Id)*/) && c.GuildId == context.Guild.Id).FirstOrDefaultAsync(); if (gang == null) { throw new Exception("You are not in a gang."); } return(gang); }
public static async Task <Guild> FetchGuildAsync(ulong guildId) { Guild ExistingGuild = await BaseRepository <Guild> .SearchFor(c => c.Id == guildId).FirstOrDefaultAsync(); if (ExistingGuild == null) { var CreatedGuild = new Guild() { Id = guildId }; await BaseRepository <Guild> .InsertAsync(CreatedGuild); return(CreatedGuild); } return(ExistingGuild); }
public static async Task <bool> IsMutedAsync(ulong userId, ulong guildId) { return(await BaseRepository <Mute> .SearchFor(c => c.UserId == userId && c.GuildId == guildId).AnyAsync()); }
public static async Task <bool> InGangAsync(ulong userId, ulong guildId) { return(await BaseRepository <Gang> .SearchFor(c => (c.LeaderId == userId || c.Members.Any(x => x.UserId == userId)) && c.GuildId == guildId).AnyAsync()); }