Make methods virtual so they can be redefined in derived classes.
(cherry picked from commit ff3d8c1c6c)
This commit is contained in:
committed by
Sebastiaan Janssen
parent
5966ad4a05
commit
815eb5b9c8
@@ -50,7 +50,7 @@ public class MemberManager : UmbracoUserManager<MemberIdentityUser, MemberPasswo
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task<bool> IsMemberAuthorizedAsync(
|
||||
public virtual async Task<bool> IsMemberAuthorizedAsync(
|
||||
IEnumerable<string>? allowTypes = null,
|
||||
IEnumerable<string>? allowGroups = null,
|
||||
IEnumerable<int>? allowMembers = null)
|
||||
@@ -122,14 +122,14 @@ public class MemberManager : UmbracoUserManager<MemberIdentityUser, MemberPasswo
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public bool IsLoggedIn()
|
||||
public virtual bool IsLoggedIn()
|
||||
{
|
||||
HttpContext? httpContext = _httpContextAccessor.HttpContext;
|
||||
return httpContext?.User.Identity?.IsAuthenticated ?? false;
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task<bool> MemberHasAccessAsync(string path)
|
||||
public virtual async Task<bool> MemberHasAccessAsync(string path)
|
||||
{
|
||||
if (await IsProtectedAsync(path))
|
||||
{
|
||||
@@ -140,7 +140,7 @@ public class MemberManager : UmbracoUserManager<MemberIdentityUser, MemberPasswo
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task<IReadOnlyDictionary<string, bool>> MemberHasAccessAsync(IEnumerable<string> paths)
|
||||
public virtual async Task<IReadOnlyDictionary<string, bool>> MemberHasAccessAsync(IEnumerable<string> paths)
|
||||
{
|
||||
IReadOnlyDictionary<string, bool> protectedPaths = await IsProtectedAsync(paths);
|
||||
|
||||
@@ -163,10 +163,10 @@ public class MemberManager : UmbracoUserManager<MemberIdentityUser, MemberPasswo
|
||||
/// <remarks>
|
||||
/// this is a cached call
|
||||
/// </remarks>
|
||||
public Task<bool> IsProtectedAsync(string path) => Task.FromResult(_publicAccessService.IsProtected(path).Success);
|
||||
public virtual Task<bool> IsProtectedAsync(string path) => Task.FromResult(_publicAccessService.IsProtected(path).Success);
|
||||
|
||||
/// <inheritdoc />
|
||||
public Task<IReadOnlyDictionary<string, bool>> IsProtectedAsync(IEnumerable<string> paths)
|
||||
public virtual Task<IReadOnlyDictionary<string, bool>> IsProtectedAsync(IEnumerable<string> paths)
|
||||
{
|
||||
var result = new Dictionary<string, bool>();
|
||||
foreach (var path in paths)
|
||||
@@ -179,7 +179,7 @@ public class MemberManager : UmbracoUserManager<MemberIdentityUser, MemberPasswo
|
||||
}
|
||||
|
||||
/// <inheritdoc />
|
||||
public async Task<MemberIdentityUser?> GetCurrentMemberAsync()
|
||||
public virtual async Task<MemberIdentityUser?> GetCurrentMemberAsync()
|
||||
{
|
||||
if (_currentMember == null)
|
||||
{
|
||||
@@ -194,7 +194,7 @@ public class MemberManager : UmbracoUserManager<MemberIdentityUser, MemberPasswo
|
||||
return _currentMember;
|
||||
}
|
||||
|
||||
public IPublishedContent? AsPublishedMember(MemberIdentityUser user) => _store.GetPublishedMember(user);
|
||||
public virtual IPublishedContent? AsPublishedMember(MemberIdentityUser user) => _store.GetPublishedMember(user);
|
||||
|
||||
/// <summary>
|
||||
/// This will check if the member has access to this path
|
||||
|
||||
@@ -126,7 +126,7 @@ public class MemberSignInManager : UmbracoSignInManager<MemberIdentityUser>, IMe
|
||||
/// <summary>
|
||||
/// Custom ExternalLoginSignInAsync overload for handling external sign in with auto-linking
|
||||
/// </summary>
|
||||
public async Task<SignInResult> ExternalLoginSignInAsync(ExternalLoginInfo loginInfo, bool isPersistent, bool bypassTwoFactor = false)
|
||||
public virtual async Task<SignInResult> ExternalLoginSignInAsync(ExternalLoginInfo loginInfo, bool isPersistent, bool bypassTwoFactor = false)
|
||||
{
|
||||
// borrowed from https://github.com/dotnet/aspnetcore/blob/master/src/Identity/Core/src/SignInManager.cs
|
||||
// to be able to deal with auto-linking and reduce duplicate lookups
|
||||
|
||||
Reference in New Issue
Block a user