Fix #3539 for Multiple click on login button

Updated the LoginBase, if the URI doesn't contain the login URL then the NavigationManager is updated.
This commit is contained in:
Leigh Pointer 2023-12-12 07:25:35 +01:00
parent 1d230bd4aa
commit 467e5423d2

View File

@ -28,16 +28,21 @@ namespace Oqtane.Themes.Controls
var returnurl = WebUtility.UrlEncode(PageState.Route.PathAndQuery);
if (allowexternallogin && !allowsitelogin)
// Check if not already actioned Login
if(!NavigationManager.Uri.ToString().Contains("login?returnurl=%2F"))
{
// external login
NavigationManager.NavigateTo(Utilities.TenantUrl(PageState.Alias, "/pages/external?returnurl=" + returnurl), true);
}
else
{
// local login
NavigationManager.NavigateTo(NavigateUrl("login", "?returnurl=" + returnurl));
if (allowexternallogin && !allowsitelogin)
{
// external login
NavigationManager.NavigateTo(Utilities.TenantUrl(PageState.Alias, "/pages/external?returnurl=" + returnurl), true);
}
else
{
// local login
NavigationManager.NavigateTo(NavigateUrl("login", "?returnurl=" + returnurl));
}
}
}
protected async Task LogoutUser()