Fix #5959: set OnRedirectToIdentityProvider events without overwrite previous settings.

This commit is contained in:
Ben
2026-01-16 10:26:49 +08:00
parent b0d624034a
commit 9d42dac7d9

View File

@@ -84,16 +84,13 @@ namespace Oqtane.Extensions
options.Events.OnRemoteFailure = OnRemoteFailure; options.Events.OnRemoteFailure = OnRemoteFailure;
if (sitesettings.GetValue("ExternalLogin:Parameters", "") != "") if (sitesettings.GetValue("ExternalLogin:Parameters", "") != "")
{ {
options.Events = new OpenIdConnectEvents options.Events.OnRedirectToIdentityProvider = context =>
{ {
OnRedirectToIdentityProvider = context => foreach (var parameter in sitesettings.GetValue("ExternalLogin:Parameters", "").Split(","))
{ {
foreach (var parameter in sitesettings.GetValue("ExternalLogin:Parameters", "").Split(",")) context.ProtocolMessage.SetParameter(parameter.Split("=")[0], parameter.Split("=")[1]);
{
context.ProtocolMessage.SetParameter(parameter.Split("=")[0], parameter.Split("=")[1]);
}
return Task.FromResult(0);
} }
return Task.FromResult(0);
}; };
} }
} }