public bool HasRole(Role role, bool decision) { if (Allow.HasFlag(role)) { decision = true; } if (Deny.HasFlag(role)) { decision = false; } return(decision); }
public bool HasRole(string host, string user, string feed, Role role, bool decision) { if (Allow.HasFlag(role)) decision = true; if (Deny.HasFlag(role)) decision = false; if (InteractorRoles.TryGetValue(new InteractorRole.Key(host, user), out var interactorRole)) decision = interactorRole.HasRole(role, decision); else if (InteractorRoles.TryGetValue(new InteractorRole.Key("*", user), out interactorRole)) decision = interactorRole.HasRole(role, decision); return decision; }
public OverwrittenPermissionState GetPermissionState(DiscordPermission permission) { if (Allow.HasFlag(permission)) { return(OverwrittenPermissionState.Allow); } else if (Deny.HasFlag(permission)) { return(OverwrittenPermissionState.Deny); } else { return(OverwrittenPermissionState.Inherit); } }
public bool HasRole(string host, string user, string feed, Role role) { var decision = Allow.HasFlag(role); if (Deny.HasFlag(role)) { decision = false; } if (FeedRoles.TryGetValue(feed, out var feedPermission)) { decision = feedPermission.HasRole(host, user, feed, role, decision); } return(decision); }
public bool HasRole(IPAddress address, string user, string feed, Role role) { var decision = Allow.HasFlag(role); if (Deny.HasFlag(role)) { decision = false; } FeedRole feedPermission; if (FeedRoles.TryGetValue(feed, out feedPermission)) { decision = feedPermission.HasRole(address, user, feed, role, decision); } return(decision); }
public bool HasRole(IPAddress address, string user, string feed, Role role, bool decision) { if (Allow.HasFlag(role)) { decision = true; } if (Deny.HasFlag(role)) { decision = false; } InteractorRole interactorRole; if (InteractorRoles.TryGetValue(new InteractorRole.Key(address, user), out interactorRole)) { decision = interactorRole.HasRole(role, decision); } return(decision); }