From 8181938aaf3cb4ef9f14eab98820cc05b73da447 Mon Sep 17 00:00:00 2001 From: LittleSheep Date: Thu, 11 Dec 2025 22:25:40 +0800 Subject: [PATCH] :sparkles: Managed mode page will render with layout --- DysonNetwork.Shared/Models/PublicationSite.cs | 1 - .../Pages/Dynamic/DynamicPage.cshtml | 8 ++ .../Pages/Dynamic/DynamicPage.cshtml.cs | 8 ++ .../Pages/Shared/_LayoutContained.cshtml | 29 +++++- .../Publication/PublicationSiteMiddleware.cs | 94 +++++++++++++++++-- DysonNetwork.sln.DotSettings.user | 5 + 6 files changed, 132 insertions(+), 13 deletions(-) create mode 100644 DysonNetwork.Zone/Pages/Dynamic/DynamicPage.cshtml create mode 100644 DysonNetwork.Zone/Pages/Dynamic/DynamicPage.cshtml.cs diff --git a/DysonNetwork.Shared/Models/PublicationSite.cs b/DysonNetwork.Shared/Models/PublicationSite.cs index 646ef73..75ff03b 100644 --- a/DysonNetwork.Shared/Models/PublicationSite.cs +++ b/DysonNetwork.Shared/Models/PublicationSite.cs @@ -30,7 +30,6 @@ public class PublicationSiteNavItem { [MaxLength(1024)] public string Label { get; set; } = null!; [MaxLength(8192)] public string Href { get; set; } = null!; - Dictionary Attributes { get; set; } = new(); } public class SnPublicationSite : ModelBase diff --git a/DysonNetwork.Zone/Pages/Dynamic/DynamicPage.cshtml b/DysonNetwork.Zone/Pages/Dynamic/DynamicPage.cshtml new file mode 100644 index 0000000..79e6d36 --- /dev/null +++ b/DysonNetwork.Zone/Pages/Dynamic/DynamicPage.cshtml @@ -0,0 +1,8 @@ +@model DynamicPage +@{ + Layout = "_LayoutContained"; +} + +
+ @Html.Raw(Model.Html) +
\ No newline at end of file diff --git a/DysonNetwork.Zone/Pages/Dynamic/DynamicPage.cshtml.cs b/DysonNetwork.Zone/Pages/Dynamic/DynamicPage.cshtml.cs new file mode 100644 index 0000000..9373429 --- /dev/null +++ b/DysonNetwork.Zone/Pages/Dynamic/DynamicPage.cshtml.cs @@ -0,0 +1,8 @@ +using Microsoft.AspNetCore.Mvc.RazorPages; + +namespace DysonNetwork.Zone.Pages.Dynamic; + +public class DynamicPage : PageModel +{ + public string Html { get; set; } = ""; +} \ No newline at end of file diff --git a/DysonNetwork.Zone/Pages/Shared/_LayoutContained.cshtml b/DysonNetwork.Zone/Pages/Shared/_LayoutContained.cshtml index 698a744..8ed8faf 100644 --- a/DysonNetwork.Zone/Pages/Shared/_LayoutContained.cshtml +++ b/DysonNetwork.Zone/Pages/Shared/_LayoutContained.cshtml @@ -1,5 +1,6 @@ @using DysonNetwork.Zone.Publication @using DysonNetwork.Shared.Models +@using Microsoft.IdentityModel.Tokens @{ Layout = "_Layout"; var site = Context.Items[PublicationSiteMiddleware.SiteContextKey] as SnPublicationSite; @@ -8,13 +9,26 @@ @@ -30,6 +44,11 @@ @section Head { @await RenderSectionAsync("Head", required: false) + + @if (site?.Config.StyleOverride is not null) + { + + }