2017-07-19 08:38:14 +00:00
|
|
|
|
using Microsoft.EntityFrameworkCore;
|
2017-10-13 04:14:54 +00:00
|
|
|
|
using NadekoBot.Core.Services.Database.Models;
|
|
|
|
|
using NadekoBot.Core.Services.Database.Repositories;
|
2017-07-19 08:38:14 +00:00
|
|
|
|
|
|
|
|
|
namespace NadekoBot.Modules.Utility.Extensions
|
|
|
|
|
{
|
|
|
|
|
public static class StreamRoleExtensions
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Gets full stream role settings for the guild with the specified id.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="gc"></param>
|
|
|
|
|
/// <param name="guildId">Id of the guild to get stream role settings for.</param>
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
public static StreamRoleSettings GetStreamRoleSettings(this IGuildConfigRepository gc, ulong guildId)
|
|
|
|
|
{
|
|
|
|
|
var conf = gc.For(guildId, x => x.Include(y => y.StreamRole)
|
|
|
|
|
.Include(y => y.StreamRole.Whitelist)
|
|
|
|
|
.Include(y => y.StreamRole.Blacklist));
|
|
|
|
|
|
|
|
|
|
if (conf.StreamRole == null)
|
|
|
|
|
conf.StreamRole = new StreamRoleSettings();
|
|
|
|
|
|
|
|
|
|
return conf.StreamRole;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|