allow page themes to be different from site theme - display warning message
This commit is contained in:
parent
08438c7725
commit
68cdcd193c
|
@ -137,7 +137,7 @@
|
||||||
<div class="row mb-1 align-items-center">
|
<div class="row mb-1 align-items-center">
|
||||||
<Label Class="col-sm-3" For="theme" HelpText="Select the theme for this page" ResourceKey="Theme">Theme: </Label>
|
<Label Class="col-sm-3" For="theme" HelpText="Select the theme for this page" ResourceKey="Theme">Theme: </Label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<select id="theme" class="form-select" @bind="@_themetype" required>
|
<select id="theme" class="form-select" value="@_themetype" @onchange="(e => ThemeChanged(e))" required>
|
||||||
@foreach (var theme in _themes)
|
@foreach (var theme in _themes)
|
||||||
{
|
{
|
||||||
<option value="@theme.TypeName">@theme.Name</option>
|
<option value="@theme.TypeName">@theme.Name</option>
|
||||||
|
@ -301,6 +301,19 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ThemeChanged(ChangeEventArgs e)
|
||||||
|
{
|
||||||
|
_themetype = (string)e.Value;
|
||||||
|
if (ThemeService.GetTheme(PageState.Site.Themes, _themetype)?.ThemeName != ThemeService.GetTheme(PageState.Site.Themes, PageState.Site.DefaultThemeType)?.ThemeName)
|
||||||
|
{
|
||||||
|
AddModuleMessage(Localizer["ThemeChanged.Message"], MessageType.Warning);
|
||||||
|
_containers = ThemeService.GetContainerControls(PageState.Site.Themes, _themetype);
|
||||||
|
_containertype = _containers.First().TypeName;
|
||||||
|
ThemeSettings();
|
||||||
|
StateHasChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void ThemeSettings()
|
private void ThemeSettings()
|
||||||
{
|
{
|
||||||
_themeSettingsType = null;
|
_themeSettingsType = null;
|
||||||
|
|
|
@ -148,7 +148,7 @@
|
||||||
<div class="row mb-1 align-items-center">
|
<div class="row mb-1 align-items-center">
|
||||||
<Label Class="col-sm-3" For="theme" HelpText="Select the theme for this page" ResourceKey="Theme">Theme: </Label>
|
<Label Class="col-sm-3" For="theme" HelpText="Select the theme for this page" ResourceKey="Theme">Theme: </Label>
|
||||||
<div class="col-sm-9">
|
<div class="col-sm-9">
|
||||||
<select id="theme" class="form-select" @bind="@_themetype" required>
|
<select id="theme" class="form-select" value="@_themetype" @onchange="(e => ThemeChanged(e))" required>
|
||||||
@foreach (var theme in _themes)
|
@foreach (var theme in _themes)
|
||||||
{
|
{
|
||||||
<option value="@theme.TypeName">@theme.Name</option>
|
<option value="@theme.TypeName">@theme.Name</option>
|
||||||
|
@ -401,25 +401,6 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task DeleteModule(Module module)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
PageModule pagemodule = await PageModuleService.GetPageModuleAsync(_page.PageId, module.ModuleId);
|
|
||||||
pagemodule.IsDeleted = true;
|
|
||||||
await PageModuleService.UpdatePageModuleAsync(pagemodule);
|
|
||||||
await logger.LogInformation(LogFunction.Update,"Module Deleted {Title}", module.Title);
|
|
||||||
_pageModules.RemoveAll(item => item.PageModuleId == pagemodule.PageModuleId);
|
|
||||||
StateHasChanged();
|
|
||||||
NavigationManager.NavigateTo(NavigationManager.Uri + "&tab=PageModules");
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
await logger.LogError(ex, "Error Deleting Module {Title} {Error}", module.Title, ex.Message);
|
|
||||||
AddModuleMessage(Localizer["Error.Module.Delete"], MessageType.Error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private async void ParentChanged(ChangeEventArgs e)
|
private async void ParentChanged(ChangeEventArgs e)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
|
@ -463,6 +444,19 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ThemeChanged(ChangeEventArgs e)
|
||||||
|
{
|
||||||
|
_themetype = (string)e.Value;
|
||||||
|
if (ThemeService.GetTheme(PageState.Site.Themes, _themetype)?.ThemeName != ThemeService.GetTheme(PageState.Site.Themes, PageState.Site.DefaultThemeType)?.ThemeName)
|
||||||
|
{
|
||||||
|
AddModuleMessage(Localizer["ThemeChanged.Message"], MessageType.Warning);
|
||||||
|
_containers = ThemeService.GetContainerControls(PageState.Site.Themes, _themetype);
|
||||||
|
_containertype = _containers.First().TypeName;
|
||||||
|
ThemeSettings();
|
||||||
|
StateHasChanged();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private void ThemeSettings()
|
private void ThemeSettings()
|
||||||
{
|
{
|
||||||
_themeSettingsType = null;
|
_themeSettingsType = null;
|
||||||
|
@ -646,4 +640,24 @@
|
||||||
NavigationManager.NavigateTo(NavigateUrl());
|
NavigationManager.NavigateTo(NavigateUrl());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private async Task DeleteModule(Module module)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
PageModule pagemodule = await PageModuleService.GetPageModuleAsync(_page.PageId, module.ModuleId);
|
||||||
|
pagemodule.IsDeleted = true;
|
||||||
|
await PageModuleService.UpdatePageModuleAsync(pagemodule);
|
||||||
|
await logger.LogInformation(LogFunction.Update, "Module Deleted {Title}", module.Title);
|
||||||
|
_pageModules.RemoveAll(item => item.PageModuleId == pagemodule.PageModuleId);
|
||||||
|
StateHasChanged();
|
||||||
|
NavigationManager.NavigateTo(NavigationManager.Uri + "&tab=PageModules");
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
await logger.LogError(ex, "Error Deleting Module {Title} {Error}", module.Title, ex.Message);
|
||||||
|
AddModuleMessage(Localizer["Error.Module.Delete"], MessageType.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -288,12 +288,13 @@ else
|
||||||
if (_themetype != "-")
|
if (_themetype != "-")
|
||||||
{
|
{
|
||||||
_containers = ThemeService.GetContainerControls(_themeList, _themetype);
|
_containers = ThemeService.GetContainerControls(_themeList, _themetype);
|
||||||
|
_containertype = _containers.First().TypeName;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_containers = new List<ThemeControl>();
|
_containers = new List<ThemeControl>();
|
||||||
}
|
|
||||||
_containertype = "-";
|
_containertype = "-";
|
||||||
|
}
|
||||||
_admincontainertype = "";
|
_admincontainertype = "";
|
||||||
StateHasChanged();
|
StateHasChanged();
|
||||||
}
|
}
|
||||||
|
|
|
@ -246,4 +246,7 @@
|
||||||
<data name="PageContent.Heading" xml:space="preserve">
|
<data name="PageContent.Heading" xml:space="preserve">
|
||||||
<value>Page Content</value>
|
<value>Page Content</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="ThemeChanged.Message" xml:space="preserve">
|
||||||
|
<value>Please Note That Overriding The Default Site Theme With An Unrelated Page Theme May Result In Compatibility Issues For Your Site</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
|
@ -282,4 +282,7 @@
|
||||||
<data name="PageContent.Heading" xml:space="preserve">
|
<data name="PageContent.Heading" xml:space="preserve">
|
||||||
<value>Page Content</value>
|
<value>Page Content</value>
|
||||||
</data>
|
</data>
|
||||||
|
<data name="ThemeChanged.Message" xml:space="preserve">
|
||||||
|
<value>Please Note That Overriding The Default Site Theme With An Unrelated Page Theme May Result In Compatibility Issues For Your Site</value>
|
||||||
|
</data>
|
||||||
</root>
|
</root>
|
Loading…
Reference in New Issue
Block a user