diff --git a/SS14.Web/Areas/Identity/Pages/Account/Manage/Index.cshtml b/SS14.Web/Areas/Identity/Pages/Account/Manage/Index.cshtml index c6b2325..3781c70 100644 --- a/SS14.Web/Areas/Identity/Pages/Account/Manage/Index.cshtml +++ b/SS14.Web/Areas/Identity/Pages/Account/Manage/Index.cshtml @@ -8,6 +8,13 @@

@ViewData["Title"]

+
+
+
Profile details
+
+
+

This account was created on + @TimeZoneInfo.ConvertTimeFromUtc(Model.CreatedTime.DateTime, TimeZoneInfo.Local).ToString("MMMM d, yyyy h:mm tt zzz")

Username
@@ -37,4 +44,4 @@ @section Scripts { -} \ No newline at end of file +} diff --git a/SS14.Web/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs b/SS14.Web/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs index 79253f6..891b76d 100644 --- a/SS14.Web/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs +++ b/SS14.Web/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs @@ -19,10 +19,11 @@ public partial class IndexModel : PageModel public bool CanEditUsername { get; set; } public int UsernameChangeDelay => _options.Value.UsernameChangeDays; public DateTime NextUsernameChangeAllowed { get; set; } + public DateTimeOffset CreatedTime { get; set; } public IndexModel( SpaceUserManager userManager, - SignInManager signInManager, + SignInManager signInManager, IOptions options, ApplicationDbContext dbContext, AccountLogManager accountLogManager) @@ -44,6 +45,7 @@ private async Task LoadAsync(SpaceUser user) var userName = await _userManager.GetUserNameAsync(user); Username = userName; + CreatedTime = user.CreatedTime; UpdateCanEditUsername(user); } @@ -88,13 +90,13 @@ public async Task OnPostUsernameAsync() await LoadAsync(user); return Page(); } - + Username = Username.Trim(); if (Username == user.UserName) { return RedirectToPage(); } - + UpdateCanEditUsername(user); if (!CanEditUsername) { @@ -107,7 +109,7 @@ public async Task OnPostUsernameAsync() await using var tx = await _dbContext.Database.BeginTransactionAsync(); var result = await _userManager.SetUserNameAsync(user, Username); - + if (!result.Succeeded) { foreach (var error in result.Errors) @@ -118,17 +120,17 @@ public async Task OnPostUsernameAsync() await LoadAsync(user); return Page(); } - + user.LastUsernameChange = DateTime.UtcNow; await _accountLogManager.LogNameChanged(user, oldName, user.UserName); await _signInManager.RefreshSignInAsync(user); StatusMessage = "Your username has been changed. Note that it may take some time to visibly update in some places, such as the launcher."; - + await _dbContext.SaveChangesAsync(); await tx.CommitAsync(); return RedirectToPage(); } -} \ No newline at end of file +}