2024-05-16 16:00:19 +02:00
|
|
|
|
using BiblioTech.Rewards;
|
2024-12-09 10:04:33 +01:00
|
|
|
|
using Discord;
|
2024-05-16 16:00:19 +02:00
|
|
|
|
using DiscordRewards;
|
|
|
|
|
|
using Logging;
|
|
|
|
|
|
using Newtonsoft.Json;
|
|
|
|
|
|
|
|
|
|
|
|
namespace BiblioTech
|
|
|
|
|
|
{
|
|
|
|
|
|
public class LoggingRoleDriver : IDiscordRoleDriver
|
|
|
|
|
|
{
|
|
|
|
|
|
private readonly ILog log;
|
|
|
|
|
|
|
|
|
|
|
|
public LoggingRoleDriver(ILog log)
|
|
|
|
|
|
{
|
|
|
|
|
|
this.log = log;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-04-16 15:17:40 +02:00
|
|
|
|
public async Task RunRoleGiver(Func<IRoleGiver, Task> action)
|
2024-12-09 10:04:33 +01:00
|
|
|
|
{
|
|
|
|
|
|
await Task.CompletedTask;
|
2025-04-16 15:17:40 +02:00
|
|
|
|
await action(new LoggingRoleGiver(log));
|
2024-12-09 10:04:33 +01:00
|
|
|
|
}
|
|
|
|
|
|
|
2025-04-17 09:35:13 +02:00
|
|
|
|
public async Task IterateUsersWithRoles(Func<IRoleGiver, IUser, ulong, Task> onUserWithRole, params ulong[] rolesToIterate)
|
|
|
|
|
|
{
|
|
|
|
|
|
await Task.CompletedTask;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public async Task IterateUsersWithRoles(Func<IRoleGiver, IUser, ulong, Task> onUserWithRole, Func<IRoleGiver, Task> whenDone, params ulong[] rolesToIterate)
|
2024-05-16 16:00:19 +02:00
|
|
|
|
{
|
|
|
|
|
|
await Task.CompletedTask;
|
2025-04-16 15:17:40 +02:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
private class LoggingRoleGiver : IRoleGiver
|
|
|
|
|
|
{
|
|
|
|
|
|
private readonly ILog log;
|
|
|
|
|
|
|
|
|
|
|
|
public LoggingRoleGiver(ILog log)
|
|
|
|
|
|
{
|
|
|
|
|
|
this.log = log;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
2025-04-17 09:35:13 +02:00
|
|
|
|
public async Task GiveActiveClient(ulong userId)
|
|
|
|
|
|
{
|
|
|
|
|
|
log.Log($"Giving ActiveClient role to " + userId);
|
|
|
|
|
|
await Task.CompletedTask;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public async Task GiveActiveHost(ulong userId)
|
|
|
|
|
|
{
|
|
|
|
|
|
log.Log($"Giving ActiveHost role to " + userId);
|
|
|
|
|
|
await Task.CompletedTask;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public async Task GiveActiveP2pParticipant(ulong userId)
|
|
|
|
|
|
{
|
|
|
|
|
|
log.Log($"Giving ActiveP2p role to " + userId);
|
|
|
|
|
|
await Task.CompletedTask;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public async Task RemoveActiveP2pParticipant(ulong userId)
|
|
|
|
|
|
{
|
|
|
|
|
|
log.Log($"Removing ActiveP2p role from " + userId);
|
|
|
|
|
|
await Task.CompletedTask;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public async Task GiveAltruisticRole(ulong userId)
|
|
|
|
|
|
{
|
|
|
|
|
|
log.Log($"Giving Altruistic role to " + userId);
|
|
|
|
|
|
await Task.CompletedTask;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public async Task RemoveActiveClient(ulong userId)
|
2025-04-16 15:17:40 +02:00
|
|
|
|
{
|
2025-04-17 09:35:13 +02:00
|
|
|
|
log.Log($"Removing ActiveClient role from " + userId);
|
2025-04-16 15:17:40 +02:00
|
|
|
|
await Task.CompletedTask;
|
|
|
|
|
|
}
|
2024-05-16 16:00:19 +02:00
|
|
|
|
|
2025-04-17 09:35:13 +02:00
|
|
|
|
public async Task RemoveActiveHost(ulong userId)
|
2025-04-16 15:17:40 +02:00
|
|
|
|
{
|
2025-04-17 09:35:13 +02:00
|
|
|
|
log.Log($"Removing ActiveHost role from " + userId);
|
2025-04-16 15:17:40 +02:00
|
|
|
|
await Task.CompletedTask;
|
|
|
|
|
|
}
|
2024-05-16 16:00:19 +02:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|