Files
Umbraco-CMS/src/Umbraco.Web/MembershipProviderExtensions.cs

39 lines
1.7 KiB
C#
Raw Normal View History

using System.Collections.Generic;
using System.Web;
2013-11-07 17:16:22 +01:00
using System.Web.Security;
using Umbraco.Core.Models;
2013-11-07 17:16:22 +01:00
using Umbraco.Core.Security;
using Umbraco.Core.Services;
2013-11-07 17:16:22 +01:00
namespace Umbraco.Web
{
internal static class MembershipProviderExtensions
{
/// <summary>
/// Returns the configuration of the membership provider used to configure change password editors
/// </summary>
/// <param name="membershipProvider"></param>
/// <param name="userService"></param>
2013-11-07 17:16:22 +01:00
/// <returns></returns>
public static IDictionary<string, object> GetConfiguration(
this MembershipProvider membershipProvider, IUserService userService)
2013-11-07 17:16:22 +01:00
{
var baseProvider = membershipProvider as MembershipProviderBase;
var canReset = membershipProvider.CanResetPassword(userService);
2013-11-07 17:16:22 +01:00
return new Dictionary<string, object>
{
{"minPasswordLength", membershipProvider.MinRequiredPasswordLength},
{"enableReset", canReset},
2013-11-07 17:16:22 +01:00
{"enablePasswordRetrieval", membershipProvider.EnablePasswordRetrieval},
{"requiresQuestionAnswer", membershipProvider.RequiresQuestionAndAnswer},
{"allowManuallyChangingPassword", baseProvider != null && baseProvider.AllowManuallyChangingPassword},
{"minNonAlphaNumericChars", membershipProvider.MinRequiredNonAlphanumericCharacters}
2013-11-07 17:16:22 +01:00
//TODO: Inject the other parameters in here to change the behavior of this control - based on the membership provider settings.
};
}
}
}