Merge pull request #5960 from zyhfish/task/fix-5959

Fix #5959: set OnRedirectToIdentityProvider events without overwrite previous settings.
This commit is contained in:
Shaun Walker
2026-01-16 11:20:41 -05:00
committed by GitHub

View File

@@ -84,16 +84,13 @@ namespace Oqtane.Extensions
options.Events.OnRemoteFailure = OnRemoteFailure;
if (sitesettings.GetValue("ExternalLogin:Parameters", "") != "")
{
options.Events = new OpenIdConnectEvents
{
OnRedirectToIdentityProvider = context =>
options.Events.OnRedirectToIdentityProvider = context =>
{
foreach (var parameter in sitesettings.GetValue("ExternalLogin:Parameters", "").Split(","))
{
context.ProtocolMessage.SetParameter(parameter.Split("=")[0], parameter.Split("=")[1]);
}
return Task.FromResult(0);
}
};
}
}
@@ -132,9 +129,7 @@ namespace Oqtane.Extensions
options.Events.OnRemoteFailure = OnRemoteFailure;
if (sitesettings.GetValue("ExternalLogin:Parameters", "") != "")
{
options.Events = new OAuthEvents
{
OnRedirectToAuthorizationEndpoint = context =>
options.Events.OnRedirectToAuthorizationEndpoint = context =>
{
var url = context.RedirectUri;
foreach (var parameter in sitesettings.GetValue("ExternalLogin:Parameters", "").Split(","))
@@ -143,7 +138,6 @@ namespace Oqtane.Extensions
}
context.Response.Redirect(url);
return Task.FromResult(0);
}
};
}
}