revert prerender changes and change default

This commit is contained in:
sbwalker 2024-05-10 16:28:19 -04:00
parent c597b293b8
commit d57c1e7ff0
6 changed files with 30 additions and 14 deletions

View File

@ -319,7 +319,7 @@
<div class="row mb-1 align-items-center"> <div class="row mb-1 align-items-center">
<Label Class="col-sm-3" For="rendermode" HelpText="The default render mode for the site" ResourceKey="Rendermode">Render Mode: </Label> <Label Class="col-sm-3" For="rendermode" HelpText="The default render mode for the site" ResourceKey="Rendermode">Render Mode: </Label>
<div class="col-sm-9"> <div class="col-sm-9">
<select id="rendermode" class="form-select" @bind="@_rendermode" required> <select id="rendermode" class="form-select" value="@_rendermode" @onchange="(e => RenderModeChanged(e))" required>
<option value="@RenderModes.Interactive">@(SharedLocalizer["RenderMode" + @RenderModes.Interactive])</option> <option value="@RenderModes.Interactive">@(SharedLocalizer["RenderMode" + @RenderModes.Interactive])</option>
<option value="@RenderModes.Static">@(SharedLocalizer["RenderMode" + @RenderModes.Static])</option> <option value="@RenderModes.Static">@(SharedLocalizer["RenderMode" + @RenderModes.Static])</option>
<option value="@RenderModes.Headless">@(SharedLocalizer["RenderMode" + @RenderModes.Headless])</option> <option value="@RenderModes.Headless">@(SharedLocalizer["RenderMode" + @RenderModes.Headless])</option>
@ -337,11 +337,11 @@
</div> </div>
</div> </div>
<div class="row mb-1 align-items-center"> <div class="row mb-1 align-items-center">
<Label Class="col-sm-3" For="prerender" HelpText="Specifies if interactive components should prerender their output. The default is Auto which determines if a component should be prerendered at runtime based on the environment." ResourceKey="Prerender">Prerendering: </Label> <Label Class="col-sm-3" For="prerender" HelpText="Specifies if interactive components should prerender their output on the server" ResourceKey="Prerender">Prerender: </Label>
<div class="col-sm-9"> <div class="col-sm-9">
<select id="prerender" class="form-select" @bind="@_prerender" required> <select id="prerender" class="form-select" @bind="@_prerender" required>
<option value="True">@SharedLocalizer["Auto"]</option> <option value="True">@SharedLocalizer["Yes"]</option>
<option value="False">@SharedLocalizer["Disabled"]</option> <option value="False">@SharedLocalizer["No"]</option>
</select> </select>
</div> </div>
</div> </div>
@ -572,6 +572,23 @@
} }
} }
private void RenderModeChanged(ChangeEventArgs e)
{
_rendermode = (string)e.Value;
switch (_rendermode)
{
case RenderModes.Interactive:
_prerender = "True";
break;
case RenderModes.Static:
_prerender = "False";
break;
case RenderModes.Headless:
_prerender = "False";
break;
}
}
private async Task SaveSite() private async Task SaveSite()
{ {
validated = true; validated = true;

View File

@ -277,10 +277,10 @@
<value>UI Component Settings</value> <value>UI Component Settings</value>
</data> </data>
<data name="Prerender.HelpText" xml:space="preserve"> <data name="Prerender.HelpText" xml:space="preserve">
<value>Specifies if interactive components should prerender their output. The default is Auto which determines if a component should be prerendered at runtime based on the environment.</value> <value>Specifies if interactive components should prerender their output on the server</value>
</data> </data>
<data name="Prerender.Text" xml:space="preserve"> <data name="Prerender.Text" xml:space="preserve">
<value>Prerendering: </value> <value>Prerender: </value>
</data> </data>
<data name="RenderMode.HelpText" xml:space="preserve"> <data name="RenderMode.HelpText" xml:space="preserve">
<value>The default render mode for the site</value> <value>The default render mode for the site</value>

View File

@ -453,9 +453,6 @@
<data name="RenderModeStatic" xml:space="preserve"> <data name="RenderModeStatic" xml:space="preserve">
<value>Static</value> <value>Static</value>
</data> </data>
<data name="Auto" xml:space="preserve">
<value>Auto</value>
</data>
<data name="Disabled" xml:space="preserve"> <data name="Disabled" xml:space="preserve">
<value>Disabled</value> <value>Disabled</value>
</data> </data>

View File

@ -29,7 +29,7 @@
protected override void OnParametersSet() protected override void OnParametersSet()
{ {
_prerender = ModuleState.Prerender ?? (PageState.Site.Prerender && PageState.User == null); _prerender = ModuleState.Prerender ?? PageState.Site.Prerender;
_comment = "<!-- rendermode: "; _comment = "<!-- rendermode: ";
if (PageState.RenderMode == RenderModes.Static && ModuleState.RenderMode == RenderModes.Static) if (PageState.RenderMode == RenderModes.Static && ModuleState.RenderMode == RenderModes.Static)
{ {

View File

@ -139,7 +139,7 @@
{ {
_renderMode = site.RenderMode; _renderMode = site.RenderMode;
_runtime = site.Runtime; _runtime = site.Runtime;
_prerender = site.Prerender && !Context.User.Identity.IsAuthenticated; _prerender = site.Prerender;
Route route = new Route(url, alias.Path); Route route = new Route(url, alias.Path);
var page = site.Pages.FirstOrDefault(item => item.Path.Equals(route.PagePath, StringComparison.OrdinalIgnoreCase)); var page = site.Pages.FirstOrDefault(item => item.Path.Equals(route.PagePath, StringComparison.OrdinalIgnoreCase));

View File

@ -539,6 +539,8 @@ namespace Oqtane.Infrastructure
var identityUserManager = scope.ServiceProvider.GetRequiredService<UserManager<IdentityUser>>(); var identityUserManager = scope.ServiceProvider.GetRequiredService<UserManager<IdentityUser>>();
var tenant = tenants.GetTenants().FirstOrDefault(item => item.Name == install.TenantName); var tenant = tenants.GetTenants().FirstOrDefault(item => item.Name == install.TenantName);
var rendermode = (!string.IsNullOrEmpty(install.RenderMode)) ? install.RenderMode : _configManager.GetSection("RenderMode").Value;
var runtime = (!string.IsNullOrEmpty(install.Runtime)) ? install.Runtime : _configManager.GetSection("Runtime").Value;
site = new Site site = new Site
{ {
@ -556,9 +558,9 @@ namespace Oqtane.Infrastructure
DefaultContainerType = (!string.IsNullOrEmpty(install.DefaultContainer)) ? install.DefaultContainer : Constants.DefaultContainer, DefaultContainerType = (!string.IsNullOrEmpty(install.DefaultContainer)) ? install.DefaultContainer : Constants.DefaultContainer,
AdminContainerType = (!string.IsNullOrEmpty(install.DefaultAdminContainer)) ? install.DefaultAdminContainer : Constants.DefaultAdminContainer, AdminContainerType = (!string.IsNullOrEmpty(install.DefaultAdminContainer)) ? install.DefaultAdminContainer : Constants.DefaultAdminContainer,
SiteTemplateType = install.SiteTemplate, SiteTemplateType = install.SiteTemplate,
RenderMode = (!string.IsNullOrEmpty(install.RenderMode)) ? install.RenderMode : _configManager.GetSection("RenderMode").Value, RenderMode = rendermode,
Runtime = (!string.IsNullOrEmpty(install.Runtime)) ? install.Runtime : _configManager.GetSection("Runtime").Value, Runtime = runtime,
Prerender = true, Prerender = (rendermode == RenderModes.Interactive),
Hybrid = false Hybrid = false
}; };
site = sites.AddSite(site); site = sites.AddSite(site);