feat: alternate proxy switch mode "add" (#702)

* feat: alternate proxy switch mode "add"

* docs: add proxy switch add to docs

* chore: change default alias to proxy switch new from proxy switch on
This commit is contained in:
Petal Ladenson 2024-12-05 18:24:20 -07:00 committed by GitHub
parent e44d813b73
commit 6043d31b08
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
11 changed files with 76 additions and 19 deletions

View file

@ -521,9 +521,22 @@ public class ProxyService
Task DispatchWebhook() => _dispatch.Dispatch(ctx.SystemId.Value, sentMessage);
Task MaybeLogSwitch() => (ctx.ProxySwitch && !Array.Exists(ctx.LastSwitchMembers, element => element == match.Member.Id))
? _db.Execute(conn => _repo.AddSwitch(conn, (SystemId)ctx.SystemId, new[] { match.Member.Id }))
: Task.CompletedTask;
async Task MaybeLogSwitch()
{
if (ctx.ProxySwitch == SystemConfig.ProxySwitchAction.New && !Array.Exists(ctx.LastSwitchMembers, element => element == match.Member.Id))
await _db.Execute(conn => _repo.AddSwitch(conn, (SystemId)ctx.SystemId, new[] { match.Member.Id }));
else if (ctx.ProxySwitch == SystemConfig.ProxySwitchAction.Add)
{
if (ctx.LastSwitchMembers.Length == 0)
{
await _db.Execute(conn => _repo.AddSwitch(conn, (SystemId)ctx.SystemId, new[] { match.Member.Id }));
}
else if (!Array.Exists(ctx.LastSwitchMembers, element => element == match.Member.Id))
{
await _db.Execute(conn => _repo.EditSwitch(conn, (SwitchId)ctx.LastSwitch, ctx.LastSwitchMembers.Append(match.Member.Id).ToList()));
}
}
}
async Task DeleteProxyTriggerMessage()
{