public async Task SetChannelAsync(IChannel channel) { var guild = ((SocketGuildChannel)Context.Channel).Guild; var settings = await _guildSettingsRepoistory.GetAsync(guild.Id); if (!await CheckPermission.CheckModPermission( guild.OwnerId, Context.User.Id, settings.ModRoles, ((SocketGuildUser)Context.User).Roles.Select(x => x.Id).ToList() )) { await ReplyAsync("You don't have permission to do this!"); return; } var current = await _singleStreamerSettingsRepository.GetAsync(guild.Id); if (current == null) { current = new Bot.Core.SingleStreamerSettings { GuildId = guild.Id.ToString() }; } current.ChannelId = channel.Id.ToString(); await _singleStreamerSettingsRepository.SaveAsync(current); await ReplyAsync("Channel Set"); }
public async Task AddAsync(string twitchUsername) { var guild = ((SocketGuildChannel)Context.Channel).Guild; var settings = await _guildSettingsRepoistory.GetAsync(guild.Id); if (!await CheckPermission.CheckModPermission( guild.OwnerId, Context.User.Id, settings.ModRoles, ((SocketGuildUser)Context.User).Roles.Select(x => x.Id).ToList() )) { await ReplyAsync("You don't have permission to do this!"); return; } var current = await _singleStreamerSettingsRepository.GetAsync(guild.Id); if (current == null) { current = new Bot.Core.SingleStreamerSettings { GuildId = guild.Id.ToString() }; } var user = await _twitchService.GetUserByLoginAsync(twitchUsername); if (user == null) { return; } current.UserId = user.Id; current.DisplayName = user.DisplayName; await _singleStreamerSettingsRepository.SaveAsync(current); await ReplyAsync("Single streamer set"); }