diff options
Diffstat (limited to 'AclEnum.cs')
| -rw-r--r-- | AclEnum.cs | 39 |
1 files changed, 31 insertions, 8 deletions
@@ -1,14 +1,37 @@ namespace HyperBooru; [Flags] -public enum HBMediaPermissions { - [AclPermission] Read = 0x01, - [AclPermission] Write = 0x02, - [AclPermission] Delete = 0x04, - [AclPermission] GetTags = 0x08, - [AclPermission] SetTags = 0x10 +public enum ObjectPermissions : ulong { + [AclPermission] Read = 0x01, + [AclPermission] Write = 0x02, + [AclPermission] Delete = 0x04, + [AclPermission("View tags")] GetTags = 0x08, + [AclPermission("Set tags")] SetTags = 0x10, + [AclPermission("View permissions")] GetAcl = 0x20, + [AclPermission("Set permissions")] SetAcl = 0x40, + [AclPermission("Full control")] FullControl = 0x7F } -public class AclPermissionAttribute : Attribute { - public string Name { get; set; } +[Flags] +public enum MediaPermissions : ulong { + [AclPermission("View media")] Read = 0x01, + [AclPermission("Edit info")] Write = 0x02, + [AclPermission] Delete = 0x04, + [AclPermission("View tags")] GetTags = 0x08, + [AclPermission("Set tags")] SetTags = 0x10, + [AclPermission("View permissions")] GetAcl = 0x20, + [AclPermission("Set permissions")] SetAcl = 0x40, + [AclPermission("Full control")] FullControl = 0x7F +} + +[Flags] +public enum TagPermissions : ulong { + [AclPermission("View info")] Read = 0x01, + [AclPermission("Edit info")] Write = 0x02, + [AclPermission] Delete = 0x04, + [AclPermission("View implicit tags")] GetImplicitTags = 0x08, + [AclPermission("Set implicit tags")] SetImplicitTags = 0x10, + [AclPermission("View permissions")] GetAcl = 0x20, + [AclPermission("Set permissions")] SetAcl = 0x40, + [AclPermission("Full control")] FullControl = 0x7F } |
