diff options
| author | Jake Mannens <jake@asger.xyz> | 2023-08-16 14:19:33 +1000 |
|---|---|---|
| committer | Jake Mannens <jake@asger.xyz> | 2025-08-18 10:59:32 +1000 |
| commit | acd4ca24259da98839847130bf34a27d10b0cf9f (patch) | |
| tree | a493ec45586f4b80e4125a066e842b8e86546341 /Pages/ViewMedia.razor | |
| parent | 38c60cee378b9c2ad42fc9dc79bc492b919a68f5 (diff) | |
Fixed most existing dialogs
Diffstat (limited to 'Pages/ViewMedia.razor')
| -rw-r--r-- | Pages/ViewMedia.razor | 21 |
1 files changed, 18 insertions, 3 deletions
diff --git a/Pages/ViewMedia.razor b/Pages/ViewMedia.razor index 8436159..68cc313 100644 --- a/Pages/ViewMedia.razor +++ b/Pages/ViewMedia.razor @@ -1,6 +1,7 @@ @page "/ViewMedia" @inject IDbContextFactory<HBContext> dbFactory @inject ITagService tagService +@implements IDisposable <PageTitle>@title</PageTitle> @@ -14,7 +15,7 @@ <div id="metadata-fileinfo"> <p>Title: <i>@(@media.ShortDescription ?? "None")</i></p> <p>Description: <i>@(media.LongDescription ?? "None")</i></p> - <p>Upload history</p> + <p id="metadata-uploadhistory">Upload history</p> <hr /> <table class="data-table"> <tr> @@ -84,9 +85,11 @@ private TagSelectDialog tagDialog; private MediaTagTable mediaTagTable; + private HBContext db; + protected override void OnInitialized() { - using var db = dbFactory.CreateDbContext(); - media = db.Media.AsNoTracking().First(m => m.Guid == MediaId); + db = dbFactory.CreateDbContext(); + media = db.Media.First(m => m.Guid == MediaId); if(media is null) throw new ArgumentException("Media not found!"); @@ -101,6 +104,18 @@ } private void SetIngest(bool ingest) { + var ingestTag = db.TagDefinitions + .First(td => td.Source == TagSource.Internal && td.Name == "ingest"); + + if(!ingest) + media.Tags.RemoveAll(t => t.TagDefinition.Guid == ingestTag.Guid); + else + if(!media.IsIngest) + media.Tags.Add(new(ingestTag)); + + db.SaveChanges(); StateHasChanged(); } + + public void Dispose() => db.Dispose(); } |
