summaryrefslogtreecommitdiff
path: root/Pages/ViewMedia.cshtml.cs
diff options
context:
space:
mode:
authorJake Mannens <jake@asger.xyz>2023-08-15 15:49:14 +1000
committerJake Mannens <jake@asger.xyz>2025-08-18 10:59:32 +1000
commit38c60cee378b9c2ad42fc9dc79bc492b919a68f5 (patch)
tree6b62f84aab4b7866432e5da8ae8fcb889795d58b /Pages/ViewMedia.cshtml.cs
parent07a4c7ead01514bd3f304f00abc38140a1d73634 (diff)
Convert Razor pages to Blazor
Diffstat (limited to 'Pages/ViewMedia.cshtml.cs')
-rw-r--r--Pages/ViewMedia.cshtml.cs43
1 files changed, 0 insertions, 43 deletions
diff --git a/Pages/ViewMedia.cshtml.cs b/Pages/ViewMedia.cshtml.cs
deleted file mode 100644
index 76c515b..0000000
--- a/Pages/ViewMedia.cshtml.cs
+++ /dev/null
@@ -1,43 +0,0 @@
-using Microsoft.AspNetCore.Mvc;
-using Microsoft.AspNetCore.Mvc.RazorPages;
-
-namespace HyperBooru.Pages;
-
-public class ViewMediaModel : PageModel {
- public DbMedia Media { get; private set; }
-
- public DbTagDefinition[] UserTags { get; private set; }
-
- public IEnumerable<DbTagDefinition> TagDefinitions =>
- db.TagDefinitions.Where(td => td.Source == TagSource.UserTag);
-
- private HyperBooruDbContext db;
-
- public ViewMediaModel(HyperBooruDbContext db) =>
- this.db = db;
-
- public IActionResult OnGet([FromQuery(Name = "m")] Guid mediaId) {
- Media = db.Media.First(m => m.Guid == mediaId);
- if(Media is null)
- return NotFound();
-
- UserTags = GetTagRecursive(
- Media.Tags
- .Select(t => t.TagDefinition))
- .OrderBy(td => td.Namespace)
- .ThenBy(td => td.Name)
- .ToArray();
-
- return Page();
- }
-
- public bool IsImplicit(DbTagDefinition tagDef) =>
- !Media.Tags
- .Select(t => t.TagDefinition.Guid)
- .Contains(tagDef.Guid);
-
- private IEnumerable<DbTagDefinition> GetTagRecursive(IEnumerable<DbTagDefinition> tagDefs) =>
- tagDefs
- .Concat(tagDefs.SelectMany(td => GetTagRecursive(td.ImplicitTags)))
- .DistinctBy(td => td.Guid);
-} \ No newline at end of file