Skip to content
Snippets Groups Projects

Update: Login on merge with same provider results in merge token removed and login to Coscine

Merged Benedikt Heinrichs requested to merge Hotfix/2592-sameProvider into master
1 file
+ 14
3
Compare changes
  • Side-by-side
  • Inline
@@ -86,14 +86,14 @@ namespace Coscine.Api.STS.Controllers
}
}
if (validMerge && contents != null && contents.Any((claim) => claim.Type == "UserGuid"))
if (validMerge && contents?.Any((claim) => claim.Type == "UserGuid") == true)
{
var userGuidString = contents.Where((claim) => claim.Type == "UserGuid").First();
var userGuidString = contents.First((claim) => claim.Type == "UserGuid");
var correctGuid = Guid.TryParse(userGuidString.Value, out Guid userGuid);
if (correctGuid)
{
var userList = userModel.GetAllWhere((user) => user.Id == userGuid);
if (userList.Count() > 0)
if (userList.Any())
{
var mergeIntoUser = userList.First();
@@ -116,7 +116,18 @@ namespace Coscine.Api.STS.Controllers
}
}
}
}
else if (contents?.Any((claim) => claim.Type == "UserGuid") == true)
{
var userGuidString = contents.First((claim) => claim.Type == "UserGuid");
var coscineUser = new CoscineUser()
{
UserName = userGuidString.Value,
Email = ""
};
await _signInManager.SignInAsync(coscineUser, isPersistent: false);
return Redirect(UrlGenerator.ExtendReturnUrl(returnUrl, Request));
}
string loginUrl = UrlGenerator.GetLoginUrl(Request);
Loading