@using Microsoft.AspNetCore.Components.Routing @using Oqtane.Client.Modules.Controls @using Oqtane.Modules @using Oqtane.Models @using Oqtane.Services @inherits ModuleBase @inject IUriHelper UriHelper @inject IUserService UserService @inject IProfileService ProfileService @inject ISettingService SettingService @if (profiles != null) { @foreach (Profile profile in profiles) { var p = profile; if (p.Category != category) { category = p.Category; } }
@p.Category
} @code { public override SecurityAccessLevel SecurityAccessLevel { get { return SecurityAccessLevel.View; } } string message = ""; string displayname = ""; string email = ""; List profiles; List settings; string category = ""; protected override async Task OnInitializedAsync() { try { displayname = PageState.User.DisplayName; email = PageState.User.Email; profiles = await ProfileService.GetProfilesAsync(ModuleState.SiteId); settings = await SettingService.GetUserSettingsAsync(PageState.User.UserId); } catch (Exception ex) { message = ex.Message; } } private string GetProfileValue(string SettingName, string DefaultValue) { return SettingService.GetSetting(settings, SettingName, DefaultValue); } private async Task SaveUser() { User user = PageState.User; user.DisplayName = displayname; user.Email = email; await UserService.UpdateUserAsync(user); foreach (Profile profile in profiles) { string value = SettingService.GetSetting(settings, profile.Name, ""); await SettingService.UpdateUserSettingsAsync(settings, PageState.User.UserId, profile.Name, value); } UriHelper.NavigateTo(""); } private void Cancel() { UriHelper.NavigateTo(NavigateUrl("")); // navigate to home } private void ProfileChanged(UIChangeEventArgs e, string SettingName) { string value = (string)e.Value; settings = SettingService.SetSetting(settings, "User", PageState.User.UserId, SettingName, value); } }