refactor fix for #3539 to avoid string comparison
This commit is contained in:
parent
4688e49454
commit
8b6c6beceb
|
@ -13,7 +13,7 @@
|
|||
{
|
||||
string url = NavigateUrl(p.Path);
|
||||
<p class="col-md-2 mx-auto text-center mb-3">
|
||||
<NavLink class="nav-link text-primary" href="@url" Match="NavLinkMatch.All">
|
||||
<NavLink class="nav-link text-body" href="@url" Match="NavLinkMatch.All">
|
||||
<h2><span class="@p.Icon" aria-hidden="true"></span></h2>
|
||||
<p class="lead">@((MarkupString)SharedLocalizer[p.Name].ToString().Replace(" ", "<br />"))</p>
|
||||
</NavLink>
|
||||
|
|
|
@ -26,23 +26,26 @@ namespace Oqtane.Themes.Controls
|
|||
var allowexternallogin = (SettingService.GetSetting(PageState.Site.Settings, "ExternalLogin:ProviderType", "") != "") ? true : false;
|
||||
var allowsitelogin = bool.Parse(SettingService.GetSetting(PageState.Site.Settings, "LoginOptions:AllowSiteLogin", "true"));
|
||||
|
||||
var returnurl = WebUtility.UrlEncode(PageState.Route.PathAndQuery);
|
||||
|
||||
// Check if not already actioned Login
|
||||
if(!NavigationManager.Uri.ToString().Contains("login?returnurl=%2F"))
|
||||
var returnurl = "";
|
||||
if (!PageState.QueryString.ContainsKey("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));
|
||||
}
|
||||
returnurl = WebUtility.UrlEncode(PageState.Route.PathAndQuery); // remember current url
|
||||
}
|
||||
else
|
||||
{
|
||||
returnurl = PageState.QueryString["returnurl"]; // use existing value
|
||||
}
|
||||
|
||||
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()
|
||||
|
|
Loading…
Reference in New Issue
Block a user