basic models for admin state

This commit is contained in:
Rhywden
2026-08-18 12:22:28 +02:00
parent d19e4995c6
commit 0ee89b08f1
11 changed files with 56 additions and 3 deletions
+5
View File
@@ -0,0 +1,5 @@
namespace Wollmilchsau.Models;
public sealed record ElementUser
{
}
+5
View File
@@ -0,0 +1,5 @@
namespace Wollmilchsau.Models;
public sealed record LdapUser
{
}
+5
View File
@@ -0,0 +1,5 @@
namespace Wollmilchsau.Models;
public sealed record MoodleUser
{
}
+5
View File
@@ -0,0 +1,5 @@
namespace Wollmilchsau.Models;
public sealed record MsolUser
{
}
+5
View File
@@ -25,6 +25,11 @@ builder.Services.AddHttpClient("matrix_synapse", client =>
"Bearer", "Bearer",
builder.Configuration["Matrix:Synapse:BearerToken"] ?? throw new ConfigurationException("Matrix:Synapse:BearerToken")); builder.Configuration["Matrix:Synapse:BearerToken"] ?? throw new ConfigurationException("Matrix:Synapse:BearerToken"));
}); });
builder.Services.AddStackExchangeRedisCache(options =>
{
options.Configuration = builder.Configuration.GetConnectionString("cache") ?? throw new ConfigurationException("ConnectionStrings:cache");
options.InstanceName = "OneForAll:";
});
builder.Services.AddMudServices(); builder.Services.AddMudServices();
@@ -0,0 +1,6 @@
namespace Wollmilchsau.Store.AdminStore;
public sealed record GetAllMoodleUsers();
public sealed record GetAllElementUsers();
public sealed record GetAllLdapUsers();
public sealed record GetAllMsolUsers();
@@ -0,0 +1,5 @@
namespace Wollmilchsau.Store.AdminStore;
public class AdminEffects
{
}
@@ -0,0 +1,5 @@
namespace Wollmilchsau.Store.AdminStore;
public class AdminReducers
{
}
@@ -1,4 +1,6 @@
using Fluxor; using Fluxor;
using System.Collections.Immutable;
using Wollmilchsau.Models;
namespace Wollmilchsau.Store.AdminStore; namespace Wollmilchsau.Store.AdminStore;
@@ -6,4 +8,8 @@ namespace Wollmilchsau.Store.AdminStore;
public sealed record AdminState public sealed record AdminState
{ {
public AdminState() { } public AdminState() { }
public ImmutableDictionary<Guid, ElementUser> ElementUsers { get; init; } = [];
public ImmutableDictionary<Guid, MoodleUser> MoodleUsers { get; init; } = [];
public ImmutableDictionary<Guid, LdapUser> LdapUsers { get; init; } = [];
public ImmutableDictionary<Guid, MsolUser> MsolUsers { get; init; } = [];
} }
+4 -3
View File
@@ -1,4 +1,4 @@
<Project Sdk="Microsoft.NET.Sdk.Web"> <Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup> <PropertyGroup>
<TargetFramework>net10.0</TargetFramework> <TargetFramework>net10.0</TargetFramework>
@@ -14,11 +14,12 @@
<PackageReference Include="Hangfire" Version="1.8.24" /> <PackageReference Include="Hangfire" Version="1.8.24" />
<PackageReference Include="Hangfire.AspNetCore" Version="1.8.24" /> <PackageReference Include="Hangfire.AspNetCore" Version="1.8.24" />
<PackageReference Include="Hangfire.Redis.StackExchange" Version="1.12.0" /> <PackageReference Include="Hangfire.Redis.StackExchange" Version="1.12.0" />
<PackageReference Include="Marten.AspNetCore" Version="9.25.0" /> <PackageReference Include="Marten.AspNetCore" Version="9.27.0" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="10.0.11" /> <PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="10.0.11" />
<PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="10.0.11" />
<PackageReference Include="Microsoft.Graph" Version="6.5.0" /> <PackageReference Include="Microsoft.Graph" Version="6.5.0" />
<PackageReference Include="MudBlazor" Version="9.8.0" /> <PackageReference Include="MudBlazor" Version="9.8.0" />
<PackageReference Include="StackExchange.Redis" Version="2.8.31" /> <PackageReference Include="StackExchange.Redis" Version="3.1.13" />
<PackageReference Include="System.DirectoryServices.Protocols" Version="10.0.11" /> <PackageReference Include="System.DirectoryServices.Protocols" Version="10.0.11" />
</ItemGroup> </ItemGroup>
@@ -20,6 +20,11 @@
"BearerToken": "mct_pheE3gW6GR1HIg1z47ZVHGb1dwwIXq_Gsoev1" "BearerToken": "mct_pheE3gW6GR1HIg1z47ZVHGb1dwwIXq_Gsoev1"
} }
}, },
"Moodle": {
"BaseUrl": "https://moodle.bs18.de/webservice/rest/server.php",
"WsToken": "893de4687f2c4b9598b64ae2900bab2f"
},
"ConnectionStrings": { "ConnectionStrings": {
"Marten": "Host=lxc-db3;Port=5432;Database=oneforall_dev;Username=OneForAll;Password=ia9vgM6F9kUt", "Marten": "Host=lxc-db3;Port=5432;Database=oneforall_dev;Username=OneForAll;Password=ia9vgM6F9kUt",
"RedisCache": "lxc-matrix:6379" "RedisCache": "lxc-matrix:6379"