diff --git a/extra/admin-api/Spacebar.AdminAPI/Controllers/UserController.cs b/extra/admin-api/Spacebar.AdminAPI/Controllers/UserController.cs
index 436c0f91..c727077a 100644
--- a/extra/admin-api/Spacebar.AdminAPI/Controllers/UserController.cs
+++ b/extra/admin-api/Spacebar.AdminAPI/Controllers/UserController.cs
@@ -48,7 +48,7 @@ public class UserController(ILogger<UserController> logger, Configuration config
Disabled = x.Disabled,
Deleted = x.Deleted,
Email = x.Email,
- Flags = ulong.Parse(x.Flags),
+ Flags = x.Flags,
PublicFlags = x.PublicFlags,
Rights = x.Rights,
ApplicationBotUser = x.ApplicationBotUser == null ? null : new(),
diff --git a/extra/admin-api/Spacebar.Db/Contexts/SpacebarDbContext.cs b/extra/admin-api/Spacebar.Db/Contexts/SpacebarDbContext.cs
index 0a707c75..7d380b1c 100644
--- a/extra/admin-api/Spacebar.Db/Contexts/SpacebarDbContext.cs
+++ b/extra/admin-api/Spacebar.Db/Contexts/SpacebarDbContext.cs
@@ -1,7 +1,6 @@
-using System;
-using System.Collections.Generic;
-using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore;
using Spacebar.Db.Models;
+using Stream = Spacebar.Db.Models.Stream;
namespace Spacebar.Db.Contexts;
diff --git a/extra/admin-api/Spacebar.Db/Models/User.cs b/extra/admin-api/Spacebar.Db/Models/User.cs
index 7af60bf4..323846d4 100644
--- a/extra/admin-api/Spacebar.Db/Models/User.cs
+++ b/extra/admin-api/Spacebar.Db/Models/User.cs
@@ -90,19 +90,19 @@ public partial class User
public string? Email { get; set; }
[Column("flags")]
- public long Flags { get; set; }
+ public ulong Flags { get; set; }
[Column("public_flags")]
- public long PublicFlags { get; set; }
+ public ulong PublicFlags { get; set; }
[Column("purchased_flags")]
- public long PurchasedFlags { get; set; }
+ public ulong PurchasedFlags { get; set; }
[Column("premium_usage_flags")]
public int PremiumUsageFlags { get; set; }
[Column("rights")]
- public long Rights { get; set; }
+ public ulong Rights { get; set; }
[Column("data")]
public string Data { get; set; } = null!;
diff --git a/extra/admin-api/Utilities/Spacebar.AdminAPITest/Spacebar.AdminAPITest.csproj b/extra/admin-api/Utilities/Spacebar.AdminAPITest/Spacebar.AdminAPITest.csproj
index ec27f0b6..5daabdd0 100644
--- a/extra/admin-api/Utilities/Spacebar.AdminAPITest/Spacebar.AdminAPITest.csproj
+++ b/extra/admin-api/Utilities/Spacebar.AdminAPITest/Spacebar.AdminAPITest.csproj
@@ -10,9 +10,7 @@
</PropertyGroup>
<ItemGroup>
- <Reference Include="ArcaneLibs">
- <HintPath>..\..\..\..\..\..\..\.nuget\packages\arcanelibs\1.0.0-preview.20241210-161342\lib\net10.0\ArcaneLibs.dll</HintPath>
- </Reference>
+ <PackageReference Include="ArcaneLibs" Version="1.0.0-preview.20251207-164820" />
</ItemGroup>
</Project>
diff --git a/extra/admin-api/db-patches/00-use-stream-class.patch b/extra/admin-api/db-patches/00-use-stream-class.patch
new file mode 100644
index 00000000..1636f120
--- /dev/null
+++ b/extra/admin-api/db-patches/00-use-stream-class.patch
@@ -0,0 +1,14 @@
+diff --git a/Spacebar.Db/Contexts/SpacebarDbContext.cs b/Spacebar.Db/Contexts/SpacebarDbContext.cs
+index 0a707c75..7d380b1c 100644
+--- a/Spacebar.Db/Contexts/SpacebarDbContext.cs
++++ b/Spacebar.Db/Contexts/SpacebarDbContext.cs
+@@ -1,7 +1,6 @@
+-using System;
+-using System.Collections.Generic;
+-using Microsoft.EntityFrameworkCore;
++using Microsoft.EntityFrameworkCore;
+ using Spacebar.Db.Models;
++using Stream = Spacebar.Db.Models.Stream;
+
+ namespace Spacebar.Db.Contexts;
+
diff --git a/extra/admin-api/db-patches/01-ulong-user-rights.patch b/extra/admin-api/db-patches/01-ulong-user-rights.patch
new file mode 100644
index 00000000..362b67d7
--- /dev/null
+++ b/extra/admin-api/db-patches/01-ulong-user-rights.patch
@@ -0,0 +1,28 @@
+diff --git a/Spacebar.Db/Models/User.cs b/Spacebar.Db/Models/User.cs
+index 7af60bf4..323846d4 100644
+--- a/Spacebar.Db/Models/User.cs
++++ b/Spacebar.Db/Models/User.cs
+@@ -90,19 +90,19 @@ public partial class User
+ public string? Email { get; set; }
+
+ [Column("flags")]
+- public long Flags { get; set; }
++ public ulong Flags { get; set; }
+
+ [Column("public_flags")]
+- public long PublicFlags { get; set; }
++ public ulong PublicFlags { get; set; }
+
+ [Column("purchased_flags")]
+- public long PurchasedFlags { get; set; }
++ public ulong PurchasedFlags { get; set; }
+
+ [Column("premium_usage_flags")]
+ public int PremiumUsageFlags { get; set; }
+
+ [Column("rights")]
+- public long Rights { get; set; }
++ public ulong Rights { get; set; }
+
+ [Column("data")]
+ public string Data { get; set; } = null!;
diff --git a/extra/admin-api/db-patches/db-00-fix-flags.patch b/extra/admin-api/db-patches/db-00-fix-flags.patch
deleted file mode 100644
index 437368f4..00000000
--- a/extra/admin-api/db-patches/db-00-fix-flags.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- Spacebar.Db/Models/User.cs.orig 2025-10-05 22:04:37.168566856 +0200
-+++ Spacebar.Db/Models/User.cs 2025-10-05 22:07:11.519980808 +0200
-@@ -92,8 +92,8 @@
- [Column("email", TypeName = "character varying")]
- public string? Email { get; set; }
-
-- [Column("flags")]
-- public int Flags { get; set; }
-+ [Column("flags", TypeName = "character varying")]
-+ public string Flags { get; set; }
-
- [Column("public_flags")]
- public int PublicFlags { get; set; }
diff --git a/extra/admin-api/scaffold-db b/extra/admin-api/scaffold-db
index 0f332e00..19d32130 100755
--- a/extra/admin-api/scaffold-db
+++ b/extra/admin-api/scaffold-db
@@ -19,6 +19,8 @@ rm Class1.cs
dotnet add package Npgsql.EntityFrameworkCore.PostgreSQL -n -f net9.0
dotnet add package Microsoft.EntityFrameworkCore.Design -n -f net9.0
+dotnet restore
+
dotnet-ef dbcontext scaffold "Host=127.0.0.1; Username=postgres; Database=sb-server-scaffold" \
Npgsql.EntityFrameworkCore.PostgreSQL \
-o Models \
@@ -28,6 +30,8 @@ dotnet-ef dbcontext scaffold "Host=127.0.0.1; Username=postgres; Database=sb-ser
--no-onconfiguring \
--data-annotations
-for patch in db-patches/*.patch; do
- patch -p3 < $patch
-done
\ No newline at end of file
+for patch in ../db-patches/*.patch; do
+ patch -p1 < $patch
+done
+
+echo 'Scaffolded database and applied patches. Dont forget to generate new patches with `git diff --relative Spacebar.Db/path/xyz > db-patches/001-your-patch-name.patch!`'
\ No newline at end of file
|