@using Microsoft.AspNetCore.Components.Routing @using Oqtane.Services @using Oqtane.Models @using Oqtane.Modules @using Oqtane.Shared @using Oqtane.Client.Modules.Controls @inherits ModuleBase @inject IUriHelper UriHelper @inject ISkinService SkinService @inject IModuleService ModuleService @inject IPageModuleService PageModuleService
Cancel @functions { public override SecurityAccessLevelEnum SecurityAccessLevel { get { return SecurityAccessLevelEnum.Edit; } } public override string Title { get { return "Module Settings"; } } Dictionary containers = new Dictionary(); string title; string containertype; string viewpermissions; string editpermissions; string pageid; protected override async Task OnInitAsync() { title = ModuleState.Title; List Skins = await SkinService.GetSkinsAsync(); foreach (Skin skin in Skins) { foreach (string container in skin.ContainerControls.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries)) { containers.Add(container, skin.Name + " - " + @Utilities.GetTypeNameClass(container)); } } containertype = ModuleState.ContainerType; viewpermissions = ModuleState.ViewPermissions; editpermissions = ModuleState.EditPermissions; pageid = ModuleState.PageId.ToString(); } private async Task SaveModule() { Module module = ModuleState; module.ViewPermissions = viewpermissions; module.EditPermissions = editpermissions; await ModuleService.UpdateModuleAsync(module); PageModule pagemodule = new PageModule(); pagemodule.PageModuleId = ModuleState.PageModuleId; pagemodule.PageId = Int32.Parse(pageid); pagemodule.ModuleId = ModuleState.ModuleId; pagemodule.Title = title; pagemodule.Pane = ModuleState.Pane; pagemodule.Order = ModuleState.Order; pagemodule.ContainerType = containertype; await PageModuleService.UpdatePageModuleAsync(pagemodule); UriHelper.NavigateTo(NavigateUrl(true)); } }