From dd31f7352cd170616f03b1af301d4d2597ac3966 Mon Sep 17 00:00:00 2001 From: Jake Mannens Date: Sun, 24 May 2026 01:25:02 +1000 Subject: Modified Razor pages and components to temporarily allow them to compile --- Pages/Component/AboutDialog.razor | 26 ++++--- Pages/Component/MediaTagTable.razor | 39 +++++----- Pages/Component/NsfwSwitch.razor | 8 +- Pages/Component/Switch.razor | 4 +- Pages/Component/TagEditDialog.razor | 10 ++- Pages/Component/TagSelectDialog.razor | 109 +++++++++++++------------- Pages/Component/Titlebar.razor | 93 ++++++++++++---------- Pages/Gallery.razor | 95 ++++++++++++---------- Pages/Login.razor | 12 +-- Pages/TagDefinitions.razor | 132 ++++++++++++++++--------------- Pages/Upload.razor | 1 - Pages/ViewMedia.razor | 143 ++++++++++++++++++---------------- 12 files changed, 359 insertions(+), 313 deletions(-) (limited to 'Pages') diff --git a/Pages/Component/AboutDialog.razor b/Pages/Component/AboutDialog.razor index 1229dc7..fa7b1ca 100644 --- a/Pages/Component/AboutDialog.razor +++ b/Pages/Component/AboutDialog.razor @@ -1,7 +1,9 @@ @using System.Reflection -@using Microsoft.AspNetCore.Hosting -@inject IDbContextFactory dbFactory -@inject IHostingEnvironment hostingEnvironment +@* + * @using Microsoft.AspNetCore.Hosting + * @inject IDbContextFactory dbFactory + * @inject IHostingEnvironment hostingEnvironment + *@ @implements IDialog @@ -699,15 +701,15 @@ set { dialog.Visible = value; if(value) { - using var db = dbFactory.CreateDbContext(); - progress = ( - Untagged: db.Media - .Where(m => m.Tags.Any(t => t.TagDefinition.ObjectId == (int) HBObjectId.IngestTag)) - .Count(), - Total: db.Media.Count() - ); - progressBar.Progress = (float) progress.Value!.Untagged / (float) progress.Value!.Total; - InvokeAsync(() => StateHasChanged()); + // using var db = dbFactory.CreateDbContext(); + // progress = ( + // Untagged: db.Media + // .Where(m => m.Tags.Any(t => t.TagDefinition.ObjectId == (int) HBObjectId.IngestTag)) + // .Count(), + // Total: db.Media.Count() + // ); + // progressBar.Progress = (float) progress.Value!.Untagged / (float) progress.Value!.Total; + // InvokeAsync(() => StateHasChanged()); } } } diff --git a/Pages/Component/MediaTagTable.razor b/Pages/Component/MediaTagTable.razor index 1b62832..0524739 100644 --- a/Pages/Component/MediaTagTable.razor +++ b/Pages/Component/MediaTagTable.razor @@ -1,7 +1,4 @@ -@inject IDbContextFactory dbFactory -@inject ITagService tagService - - +@inject HBSession hb @@ -19,7 +16,7 @@ } @foreach(var tagDef in tagDefinitions.Where(td => td.Namespace == ns)) { - + @* *@ + @@ -53,11 +57,13 @@ PromptImplicitTags(tagDef))> Implicit Tags +@* @if(tagDef.ImplicitTags.Select(td => td.Guid).Contains(HBContext.NsfwTag)) { SetNsfw(tagDef, false))>Make SFW } else { SetNsfw(tagDef, true))>Make NSFW } +*@ } @@ -93,35 +99,35 @@ private string?[] tagNamespaces; - protected override void OnInitialized() => - userService.UserSessionState.OnStateChange += ShowNsfwChanged; + // protected override void OnInitialized() => + // userService.UserSessionState.OnStateChange += ShowNsfwChanged; protected override void OnParametersSet() => LoadTags(); private void LoadTags() { - int[] nsfwTags = Array.Empty(); - if(!userService.UserSessionState.ShowNsfw) - nsfwTags = tagService.TagsThatImply(HBContext.NsfwTag) - .Select(td => td.ObjectId) - .ToArray(); - - tagDefinitions = dbFactory.CreateDbContext().TagDefinitions - .Include(td => td.ImplicitTags) - .Where(td => td.Source == ApiModels.TagSource.UserTag) - .OrderBy(td => td.Namespace) - .ThenBy(td => td.Name) - .AsEnumerable() - .Where(td => userService.UserSessionState.ShowNsfw || !td.ImplicitTags - .IntersectBy(nsfwTags, td => td.ObjectId) - .Any()) - .ToArray(); - - tagNamespaces = tagDefinitions - .Select(td => td.Namespace) - .Order() - .Distinct() - .ToArray(); + // int[] nsfwTags = Array.Empty(); + // if(!userService.UserSessionState.ShowNsfw) + // nsfwTags = tagService.TagsThatImply(HBContext.NsfwTag) + // .Select(td => td.ObjectId) + // .ToArray(); + + // tagDefinitions = dbFactory.CreateDbContext().TagDefinitions + // .Include(td => td.ImplicitTags) + // .Where(td => td.Source == TagSource.UserTag) + // .OrderBy(td => td.Namespace) + // .ThenBy(td => td.Name) + // .AsEnumerable() + // .Where(td => userService.UserSessionState.ShowNsfw || !td.ImplicitTags + // .IntersectBy(nsfwTags, td => td.ObjectId) + // .Any()) + // .ToArray(); + + // tagNamespaces = tagDefinitions + // .Select(td => td.Namespace) + // .Order() + // .Distinct() + // .ToArray(); } private void PromptToDelete(TagDefinition toDelete) { @@ -130,13 +136,13 @@ } private void DeleteTagDefinition() { - if(toDelete is null) - return; + // if(toDelete is null) + // return; - tagService.DeleteTagDefinition(toDelete); - deleteTagDialog.Hide(); - LoadTags(); - StateHasChanged(); + // tagService.DeleteTagDefinition(toDelete); + // deleteTagDialog.Hide(); + // LoadTags(); + // StateHasChanged(); } private void PromptTagCreate() { @@ -152,36 +158,36 @@ } private void PromptImplicitTags(TagDefinition toEditImplicit) { - this.toEditImplicit = toEditImplicit; - implicitTagDialog.SelectedTags = - toEditImplicit.ImplicitTags.ToArray(); - implicitTagDialog.Show(); + // this.toEditImplicit = toEditImplicit; + // implicitTagDialog.SelectedTags = + // toEditImplicit.ImplicitTags.ToArray(); + // implicitTagDialog.Show(); } private void SetImplicitTags(TagDefinition[] tagDefs) { if(toEditImplicit is null) return; - tagService.SetImplicitTags(toEditImplicit, tagDefs); + // tagService.SetImplicitTags(toEditImplicit, tagDefs); LoadTags(); StateHasChanged(); } private void SetNsfw(TagDefinition tagDef, bool nsfw) { - if(nsfw) - tagService.AddImplicitTag(tagDef.Guid, HBContext.NsfwTag); - else - tagService.RemoveImplicitTag(tagDef.Guid, HBContext.NsfwTag); - LoadTags(); - StateHasChanged(); + // if(nsfw) + // tagService.AddImplicitTag(tagDef.Guid, HBContext.NsfwTag); + // else + // tagService.RemoveImplicitTag(tagDef.Guid, HBContext.NsfwTag); + // LoadTags(); + // StateHasChanged(); } - private async void ShowNsfwChanged(UserSessionState userSessionState) => - await InvokeAsync(() => { - LoadTags(); - StateHasChanged(); - }); + // private async void ShowNsfwChanged(UserSessionState userSessionState) => + // await InvokeAsync(() => { + // LoadTags(); + // StateHasChanged(); + // }); - public void Dispose() => - userService.UserSessionState.OnStateChange -= ShowNsfwChanged; + // public void Dispose() => + // userService.UserSessionState.OnStateChange -= ShowNsfwChanged; } diff --git a/Pages/Upload.razor b/Pages/Upload.razor index 6d6e8bc..74cfd64 100644 --- a/Pages/Upload.razor +++ b/Pages/Upload.razor @@ -1,5 +1,4 @@ @page "/Upload" -@attribute [Authorize]

diff --git a/Pages/ViewMedia.razor b/Pages/ViewMedia.razor index 46cbc45..e210e79 100644 --- a/Pages/ViewMedia.razor +++ b/Pages/ViewMedia.razor @@ -1,11 +1,7 @@ @page "/ViewMedia" -@using HyperBooru.Util +@* @using HyperBooru.Util*@ +@inject HBSession hb @inject IJSRuntime jsRuntime -@inject IDbContextFactory dbFactory -@inject ITagService tagService -@inject IMediaService mediaService -@inject ISourceService sourceService -@attribute [Authorize] @title @@ -33,11 +29,14 @@
+ +@* -
+*@ +
@@ -45,6 +44,7 @@
@if(infoEditMode) { +@*
ApplyInfoEdit(true))>
- + @if(e.isImplicit) { @e.tagDef.Name } else { @@ -40,33 +37,39 @@ @code { [Parameter] - public Media Media { get; set; } + public Guid MediaId { get; set; } - private (TagDefinition tagDef, bool isImplicit)[] tagDefs; + private (TagDefinition tagDef, bool isImplicit)[] tagDefs = []; protected override void OnInitialized() => LoadTagDefs(); public void Refresh() { LoadTagDefs(); - StateHasChanged(); + // StateHasChanged(); } private void Delete(TagDefinition tagDef) { - tagService.RemoveTag(Media.Guid, tagDef.Guid); - Refresh(); + // tagService.RemoveTag(Media.Guid, tagDef.Guid); + // Refresh(); } - private void LoadTagDefs() { - using var db = dbFactory.CreateDbContext(); - var media = db.Media.First(m => m.ObjectId == Media.ObjectId); + private async void LoadTagDefs() { + var tags = await hb.Media.GetTagsAsync(MediaId); + + tagDefs = tags.Select(td => (tagDef: td, isImplicit: false)).ToArray(); + + await InvokeAsync(() => StateHasChanged()); + + // using var db = dbFactory.CreateDbContext(); + // var media = db.Media.First(m => m.ObjectId == Media.ObjectId); - tagDefs = tagService.GetAllTags(Media) - .Where(e => e.tagDefinition.Source == ApiModels.TagSource.UserTag) - .ToArray(); + // tagDefs = tagService.GetAllTags(Media) + // .Where(e => e.tagDefinition.Source == TagSource.UserTag) + // .ToArray(); } private void MakeExplicit(TagDefinition tagDef) { - tagService.AddTag(Media, tagDef); - Refresh(); + // tagService.AddTag(Media, tagDef); + // Refresh(); } } diff --git a/Pages/Component/NsfwSwitch.razor b/Pages/Component/NsfwSwitch.razor index b96606d..f4f9c1f 100644 --- a/Pages/Component/NsfwSwitch.razor +++ b/Pages/Component/NsfwSwitch.razor @@ -1,8 +1,6 @@ -@inject IUserService userService - - + @code { - private void ToggleNsfw(bool showNsfw) => - userService.UserSessionState.ShowNsfw = showNsfw; + private void ToggleNsfw(bool showNsfw) => _ = 0; + // userService.UserSessionState.ShowNsfw = showNsfw; } \ No newline at end of file diff --git a/Pages/Component/Switch.razor b/Pages/Component/Switch.razor index d11ac81..5264094 100644 --- a/Pages/Component/Switch.razor +++ b/Pages/Component/Switch.razor @@ -1,6 +1,4 @@ - - - + @* *@ +} else { + +} @code { - private AboutDialog aboutDialog; + // private AboutDialog aboutDialog; + + public string Username { get; set; } = ""; + public string Password { get; set; } = ""; + + private bool IsLoginPage => + new Uri(nav.Uri).AbsolutePath.Equals("/Login", StringComparison.OrdinalIgnoreCase); + + private async void Login() { + await session.LoginAsync(Username, Password); + } } diff --git a/Pages/Gallery.razor b/Pages/Gallery.razor index 743485e..2ff5486 100644 --- a/Pages/Gallery.razor +++ b/Pages/Gallery.razor @@ -1,15 +1,15 @@ @page "/" @page "/Gallery" -@inject ITagService tagService -@inject IFeedService feedService -@inject IUserService userService @inject IJSRuntime jsRuntime -@implements IDisposable -@attribute [Authorize] +@inject HBSession hb +@* + * @implements IDisposable + * @attribute [Authorize] + *@ @Title -@if(Ingest && !userService.UserSessionState.ShowNsfw) { +@if(Ingest && !hb.HasNsfwClaim) {

Ingest feed is not available unless NSFW mode is enabled!

You must enable NSFW mode to continue...

@@ -21,12 +21,12 @@
} else {
- @foreach(var media in displayMedia) { + @foreach(var mediaId in displayMedia) { // Precalculate thumbnail size to help the browser // lay out the images during initial page load - int width = (int) media.CurrentUploadedFile!.Width! * 200 / (int) media.CurrentUploadedFile.Height!; - - + @* int width = (int) media.CurrentUploadedFile!.Width! * 200 / (int) media.CurrentUploadedFile.Height!; *@ + + }
@@ -77,10 +77,10 @@ } } - private List displayMedia; + private List displayMedia = new(); - protected override void OnInitialized() => - userService.UserSessionState.OnStateChange += ShowNsfwChanged; + // protected override void OnInitialized() => + // userService.UserSessionState.OnStateChange += ShowNsfwChanged; protected override void OnParametersSet() => LoadMedia(true); @@ -93,7 +93,8 @@ [JSInvokable("LoadMedia")] public void LoadMedia(bool initial = false) { - Media? key = displayMedia?.Any() ?? false && !initial ? displayMedia.Last() : null; + Guid? key = + displayMedia?.Any() ?? false && !initial ? displayMedia.Last() : null; if(initial) displayMedia = new(); @@ -102,40 +103,48 @@ if(Enum.TryParse(SortOrder, true, out var so)) sortOrder = so; + FeedRequest feedRequest = new FeedRequest() { + SelectIngest = Ingest, + IncludeNsfw = hb.HasNsfwClaim, + ContinuationToken = key, + Count = PageSize, + SortOrder = sortOrder ?? default + }; + if(TagId is not null && Query is null) { - displayMedia!.AddRange(feedService.LoadChunk( - selectIngest: Ingest, - includeNsfw: userService.UserSessionState.ShowNsfw, - tagId: (Guid) TagId!, - key: key, - count: PageSize, - sortOrder: sortOrder ?? default)); + feedRequest = new FeedTagRequest() { + SelectIngest = Ingest, + IncludeNsfw = hb.HasNsfwClaim, + TagId = (Guid) TagId!, + ContinuationToken = key, + Count = PageSize, + SortOrder = sortOrder ?? default + }; } else if(Query is not null && TagId is null) { - displayMedia!.AddRange(feedService.LoadChunk( - selectIngest: Ingest, - includeNsfw: userService.UserSessionState.ShowNsfw, - query: string.IsNullOrWhiteSpace(Query) ? null : Query, - key: key, - count: PageSize, - sortOrder: sortOrder ?? default)); - } else { - displayMedia!.AddRange(feedService.LoadChunk( - selectIngest: Ingest, - includeNsfw: userService.UserSessionState.ShowNsfw, - key: key, - count: PageSize, - sortOrder: sortOrder ?? default)); + feedRequest = new FeedSearchRequest() { + SelectIngest = Ingest, + IncludeNsfw = hb.HasNsfwClaim, + Query = string.IsNullOrWhiteSpace(Query) ? null : Query, + ContinuationToken = key, + Count = PageSize, + SortOrder = sortOrder ?? default + }; } - StateHasChanged(); + hb.Feed + .LoadChunkAsync(feedRequest) + .ContinueWith(async m => { + displayMedia!.AddRange(await m); + await InvokeAsync(() => StateHasChanged()); + }); } - private async void ShowNsfwChanged(UserSessionState userSessionState) { - await InvokeAsync(() => { - LoadMedia(true); - }); - } + // private async void ShowNsfwChanged(UserSessionState userSessionState) { + // await InvokeAsync(() => { + // LoadMedia(true); + // }); + // } - public void Dispose() => - userService.UserSessionState.OnStateChange -= ShowNsfwChanged; + // public void Dispose() => + // userService.UserSessionState.OnStateChange -= ShowNsfwChanged; } diff --git a/Pages/Login.razor b/Pages/Login.razor index 723a78a..bdc6069 100644 --- a/Pages/Login.razor +++ b/Pages/Login.razor @@ -1,17 +1,17 @@ @page "/Login" -@inject NavigationManager navigationManager +@* @inject NavigationManager navigationManager *@ HyperBooru Login
@code { - [CascadingParameter] - public Task AuthenticationState{ get; set; } + // [CascadingParameter] + // public Task AuthenticationState{ get; set; } protected override void OnInitialized() { - var authState = AuthenticationState.GetAwaiter().GetResult(); - if(authState!.User.Identity?.IsAuthenticated ?? false) - navigationManager.NavigateTo("/"); + // var authState = AuthenticationState.GetAwaiter().GetResult(); + // if(authState!.User.Identity?.IsAuthenticated ?? false) + // navigationManager.NavigateTo("/"); } } \ No newline at end of file diff --git a/Pages/TagDefinitions.razor b/Pages/TagDefinitions.razor index 5d02e03..7ce5400 100644 --- a/Pages/TagDefinitions.razor +++ b/Pages/TagDefinitions.razor @@ -1,9 +1,10 @@ @page "/TagDefinitions" -@inject IDbContextFactory dbFactory -@inject ITagService tagService -@inject IUserService userService -@implements IDisposable -@attribute [Authorize] +@* + * @inject IDbContextFactory dbFactory + * @inject ITagService tagService + * @inject IUserService userService + * @implements IDisposable + *@ Tag Definitions @@ -23,25 +24,28 @@
@tagDef.Alias +@* @tagDef.Name +*@ @{ - var implicitTags = tagDef.ImplicitTags - .Where(td => td.Source == ApiModels.TagSource.UserTag); - foreach(var tag in implicitTags) { - - @tag.Name - - if(tag != implicitTags.Last()) - @(", ") - } + // var implicitTags = tagDef.ImplicitTags + // .Where(td => td.Source == TagSource.UserTag); + // foreach(var tag in implicitTags) { + // + // @tag.Name + // + // if(tag != implicitTags.Last()) + // @(", ") + // } }
@@ -57,11 +57,13 @@
+*@ } else { -

Title: @(media.ShortDescription ?? "None")

-

Description:
@(media.LongDescription ?? "None")

+

Title: @(media?.ShortDescription ?? "None")

+

Description:
@(media?.LongDescription ?? "None")

} -

Resolution: @(media.CurrentUploadedFile.Width)x@(media.CurrentUploadedFile.Height)

+@* +

Resolution: @(media.CurrentUploadedFile.Width)x@(media.CurrentUploadedFile.Height)

Upload history


@@ -102,16 +104,18 @@ }
+*@

Tags


- +
- @@ -123,8 +127,10 @@

View OCR

- @if(infoEditMode) { - @@ -132,23 +138,26 @@

Apply

- } else { +*@ + } else { } - @if(media.IsIngest) { +@* + @if(media.IsIngest) { } else { - - } + @* } *@
@@ -159,6 +168,7 @@ +@* @@ -181,56 +191,59 @@ Title="Select one or more tag(s) to add" OnSubmit=AddTags @ref=tagDialog/> +*@ @code { - [Parameter] - [SupplyParameterFromQuery(Name = "m")] - public Guid MediaId { get; set; } + [Parameter] + [SupplyParameterFromQuery(Name = "m")] + public Guid MediaId { get; set; } - private Media media; + private ApiModels.Media media; - private string title; + private string title; - private bool infoEditMode = false; - private string? shortDescription; - private string? longDescription; + private bool infoEditMode = false; + private string? shortDescription; + private string? longDescription; - private MediaTagTable mediaTagTable; - private Dialog deleteDialog; - private Dialog ocrDialog; - private TagSelectDialog tagDialog; + private MediaTagTable mediaTagTable; + // private Dialog deleteDialog; + // private Dialog ocrDialog; + // private TagSelectDialog tagDialog; - private ElementReference shortDescriptionInput; + private ElementReference shortDescriptionInput; - protected override void OnInitialized() => - LoadMedia(); + protected override void OnInitialized() => + LoadMedia(); - protected override async void OnAfterRender(bool firstRender) { - if(infoEditMode) - await shortDescriptionInput.FocusAsync(); - } + protected override async void OnAfterRender(bool firstRender) { + if(infoEditMode) + await shortDescriptionInput.FocusAsync(); + } - private void LoadMedia() { - using var db = dbFactory.CreateDbContext(); - media = db.Media - .Include(m => m.Tags) - .ThenInclude(t => t.TagDefinition) - .Include(m => m.CurrentUploadedFile) - .Include(m => m.UploadedFiles) - .Include(m => m.OcrData) - .First(m => m.Guid == MediaId); + private async void LoadMedia() { + media = await hb.Media.GetAsync(MediaId); + // using var db = dbFactory.CreateDbContext(); + // media = db.Media + // .Include(m => m.Tags) + // .ThenInclude(t => t.TagDefinition) + // .Include(m => m.CurrentUploadedFile) + // .Include(m => m.UploadedFiles) + // .Include(m => m.OcrData) + // .First(m => m.Guid == MediaId); - title = media.DisplayName ?? "Media View"; - } + // title = media.DisplayName ?? "Media View"; + // InvokeAsync(() => StateHasChanged()); + } - private void AddTags(TagDefinition[] tagDefs) { - foreach(var tagDef in tagDefs) - tagService.AddTag(media, tagDef); - mediaTagTable.Refresh(); - } + // private void AddTags(TagDefinition[] tagDefs) { + // foreach(var tagDef in tagDefs) + // tagService.AddTag(media, tagDef); + // mediaTagTable.Refresh(); + // } private async void SetIngest(bool ingest) { - mediaService.SetIngest(media, ingest); + // mediaService.SetIngest(media, ingest); LoadMedia(); if(ingest) @@ -249,17 +262,17 @@ } } - private void ApplyInfoEdit(bool apply) { - if(apply) { - mediaService.SetDescription(media, shortDescription, longDescription); - LoadMedia(); - } + // private void ApplyInfoEdit(bool apply) { + // if(apply) { + // mediaService.SetDescription(media, shortDescription, longDescription); + // LoadMedia(); + // } - infoEditMode = false; - } + // infoEditMode = false; + // } - private async void DeleteMedia() { - mediaService.Delete(media); - await jsRuntime.InvokeVoidAsync("history.back"); - } + // private async void DeleteMedia() { + // mediaService.Delete(media); + // await jsRuntime.InvokeVoidAsync("history.back"); + // } } -- cgit v1.3