Refactor app architecture and clean local artifacts

This commit is contained in:
AzuTear
2026-06-24 23:43:14 +02:00
parent 17134b3b82
commit fef1d36fe8
274 changed files with 37724 additions and 6065 deletions
+40
View File
@@ -0,0 +1,40 @@
namespace Backend.Security;
public static class AdminRoles
{
public const string Viewer = "viewer";
public const string ContentAdmin = "content_admin";
public const string Admin = "admin";
public const string Owner = "owner";
public static string Normalize(string? role)
{
var normalizedRole = (role ?? string.Empty).Trim().ToLowerInvariant().Replace('-', '_');
return normalizedRole switch
{
Owner => Owner,
Admin => Admin,
ContentAdmin => ContentAdmin,
_ => Viewer,
};
}
public static bool IsKnownRole(string? role)
{
var normalizedRole = (role ?? string.Empty).Trim().ToLowerInvariant().Replace('-', '_');
return normalizedRole is Viewer or ContentAdmin or Admin or Owner;
}
public static bool CanAccessAdmin(string? role) =>
Normalize(role) is ContentAdmin or Admin or Owner;
public static bool CanManageContent(string? role) =>
Normalize(role) is ContentAdmin or Admin or Owner;
public static bool CanManageAdminWorkspace(string? role) =>
Normalize(role) is Admin or Owner;
public static bool CanManageOperationalSettings(string? role) =>
Normalize(role) is Owner;
}