Login registration

This commit is contained in:
Paul Schneider
2024-11-23 14:23:47 +00:00
parent 009015ce3c
commit 0bcabbd4ff
22 changed files with 171 additions and 176 deletions

View File

@ -157,40 +157,7 @@ namespace Yavsc.Controllers
// only set explicit expiration here if user chooses "remember me".
// otherwise we rely upon expiration configured in cookie middleware.
AuthenticationProperties props = null;
if (AccountOptions.AllowRememberLogin && model.RememberLogin)
{
props = new AuthenticationProperties
{
IsPersistent = true,
ExpiresUtc = DateTimeOffset.UtcNow.Add(AccountOptions.RememberMeLoginDuration),
// Parameters =
};
};
// roles
var roles = _dbContext.UserRoles.Where(r=>r.UserId == user.Id).ToArray();
// issue authentication cookie with subject ID and username
List<Claim> additionalClaims = new List<Claim>();
foreach (var role in roles)
{
var idRole = await _roleManager.Roles.SingleOrDefaultAsync(i=>i.Id == role.RoleId);
if (idRole != null)
{
additionalClaims.Add(new Claim(ClaimTypes.Role, idRole.Name));
}
}
additionalClaims.Add(new Claim(ClaimTypes.Name, user.UserName));
var isUser = new IdentityServerUser(user.Id)
{
DisplayName = user.UserName,
AdditionalClaims = additionalClaims.ToArray()
};
await HttpContext.SignInAsync(isUser, props);
await HttpContext.SignInAsync(user, _roleManager, model.RememberLogin,_dbContext);
if (context != null)
{
@ -231,7 +198,6 @@ namespace Yavsc.Controllers
return View(vm);
}
/// <summary>
/// Show logout page
/// </summary>

View File

@ -392,13 +392,13 @@ namespace Yavsc.Controllers
return RedirectToAction(nameof(Index), new { Message = ManageMessageId.Error });
}
public IActionResult ChangeUserName()
public IActionResult SetUserName()
{
return View(new ChangeUserNameViewModel() { NewUserName = User.Identity.Name });
return View(new SetUserNameViewModel() { UserName = User.Identity.Name });
}
[HttpPost]
public async Task<IActionResult> ChangeUserName(ChangeUserNameViewModel model)
public async Task<IActionResult> SetUserName(SetUserNameViewModel model)
{
if (!ModelState.IsValid)
{
@ -409,7 +409,7 @@ namespace Yavsc.Controllers
{
var oldUserName = user.UserName;
var result = await this._userManager.SetUserNameAsync(user, model.NewUserName);
var result = await this._userManager.SetUserNameAsync(user, model.UserName);
if (result.Succeeded)
{
@ -418,7 +418,7 @@ namespace Yavsc.Controllers
Path.Combine(_siteSettings.Blog,
oldUserName));
var newdir = Path.Combine(_siteSettings.Blog,
model.NewUserName);
model.UserName);
if (userdirinfo.Exists)
userdirinfo.MoveTo(newdir);
// Renames the Avatars files
@ -429,7 +429,7 @@ namespace Yavsc.Controllers
oldUserName+s));
if (fi.Exists)
fi.MoveTo(Path.Combine(_siteSettings.Avatars,
model.NewUserName+s));
model.UserName+s));
}
await _signInManager.SignInAsync(user, isPersistent: false);
_logger.LogInformation(3, "User changed his user name successfully.");

View File

@ -152,10 +152,6 @@ namespace Yavsc.Controllers
{
return NotFound();
}
ViewBag.Files = Yavsc.Helpers.FileSystemHelpers.GetFileName(null);
// Yavsc.Helpers.GetUserFiles(User, null);
return View(estimate);
}

View File

@ -67,8 +67,7 @@ namespace Yavsc.Controllers
}
public async Task<IActionResult> About()
{
FileInfo fi = new FileInfo("wwwroot/version");
return View("About", fi.Exists ? _localizer["Version logicielle: "] + await fi.OpenText().ReadToEndAsync() : _localizer["Aucune information sur la version logicielle n'est publiée."]);
return View("About");
}
public IActionResult Privacy()
{