public virtual void EditMemberProfile(Kooboo.CMS.Membership.Models.Membership membership, string userName, string email, string culture, string timeZoneId, string passwordQuestion = null, string passwordAnswer = null, Dictionary <string, string> profiles = null) { membership = membership.AsActual(); MembershipUser membershipUser = new MembershipUser() { Membership = membership, UserName = userName }.AsActual(); if (membershipUser == null) { throw new ArgumentException("The member doest not exists."); } if (!string.IsNullOrEmpty(email)) { membershipUser.Email = email; } membershipUser.Culture = culture; membershipUser.TimeZoneId = timeZoneId; membershipUser.PasswordQuestion = passwordQuestion; membershipUser.PasswordAnswer = passwordAnswer; membershipUser.Profiles = profiles; _provider.Update(membershipUser, membershipUser); }
public virtual void Edit(Kooboo.CMS.Membership.Models.Membership membership, string userName, string email, bool isApproved, bool isLockedOut, string culture, string timeZoneId, string passwordQuestion = null, string passwordAnswer = null, string[] membershipGroups = null, Dictionary <string, string> profiles = null, string comment = null) { membership = membership.AsActual(); MembershipUser membershipUser = new MembershipUser() { Membership = membership, UserName = userName }.AsActual(); if (membershipUser == null) { throw new ArgumentException("The member doest not exists."); } membershipUser.Email = email; membershipUser.Culture = culture; membershipUser.TimeZoneId = timeZoneId; membershipUser.PasswordQuestion = passwordQuestion; membershipUser.PasswordAnswer = passwordAnswer; membershipUser.Comment = comment; membershipUser.IsApproved = isApproved; membershipUser.IsLockedOut = isLockedOut; membershipUser.Profiles = profiles; membershipUser.MembershipGroups = membershipGroups; _provider.Update(membershipUser, membershipUser); }
public virtual MembershipUser CreateOrUpdateOAuthMember(Kooboo.CMS.Membership.Models.Membership membership, MembershipConnect membershipConnect, AuthResult authResult, Dictionary <string, string> profiles) { membership = membership.AsActual(); membershipConnect = membershipConnect.AsActual(); var userName = _oauthMembershipProvider.GetUserName(authResult, membershipConnect); var email = _oauthMembershipProvider.GetEmail(authResult, membershipConnect); MembershipUser membershipUser = new MembershipUser() { Membership = membership, UserName = userName }.AsActual(); Dictionary <string, string> extraData = null; if (authResult.ExtraData != null) { extraData = new Dictionary <string, string>(authResult.ExtraData); } if (membershipUser != null) { if (membershipUser.ProviderUserId == authResult.ProviderUserId) { membershipUser.UtcLastLoginDate = DateTime.UtcNow; membershipUser.ProviderExtraData = extraData; membershipUser.Profiles = profiles; if (profiles != null) { if (membershipUser.Profiles == null) { membershipUser.Profiles = new Dictionary <string, string>(); } foreach (var item in profiles) { membershipUser.Profiles[item.Key] = item.Value; } } membershipUser.MembershipGroups = membershipConnect.MembershipGroups; _provider.Update(membershipUser, membershipUser); } } else { membershipUser = new MembershipUser() { Membership = membership, UserName = userName }; membershipUser.Email = email; membershipUser.IsApproved = true; membershipUser.UtcCreationDate = DateTime.UtcNow; membershipUser.UtcLastLoginDate = DateTime.UtcNow; membershipUser.Profiles = profiles; membershipUser.MembershipGroups = membershipConnect.MembershipGroups; membershipUser.ProviderType = authResult.Provider; membershipUser.ProviderUserId = authResult.ProviderUserId; membershipUser.ProviderExtraData = extraData; _provider.Add(membershipUser); } return(_provider.Get(membershipUser)); }
public virtual MembershipUser Create(Kooboo.CMS.Membership.Models.Membership membership, string userName, string email, string password, bool isApproved, string culture, string timeZoneId, string passwordQuestion = null, string passwordAnswer = null, string[] membershipGroups = null, Dictionary <string, string> profiles = null, string comment = null) { membership = membership.AsActual(); MembershipUser membershipUser = new MembershipUser() { Membership = membership }; membershipUser.UserName = userName; List <DataViolationItem> violations = new List <DataViolationItem>(); if (membershipUser.AsActual() != null) { violations.Add(new DataViolationItem("UserName", userName, "DuplicateUserName")); } if (_provider.QueryUserByEmail(membership, email) != null) { violations.Add(new DataViolationItem("Email", email, "DuplicateEmail")); } if (violations.Count > 0) { throw new DataViolationException(violations); } if (!string.IsNullOrEmpty(email)) { membershipUser.Email = email; } membershipUser.Culture = culture; membershipUser.TimeZoneId = timeZoneId; membershipUser.PasswordQuestion = passwordQuestion; membershipUser.PasswordAnswer = passwordAnswer; membershipUser.Comment = comment; membershipUser.IsApproved = isApproved; if (!membershipUser.IsApproved) { string activateCode = UniqueIdGenerator.GetInstance().GetBase32UniqueId(10); membershipUser.ActivateCode = activateCode; } membershipUser.UtcCreationDate = DateTime.UtcNow; membershipUser.Profiles = profiles; membershipUser.MembershipGroups = membershipGroups; SetPassword(membership, membershipUser, password); _provider.Add(membershipUser); return(_provider.Get(membershipUser)); }
public virtual void ChangePassword(Kooboo.CMS.Membership.Models.Membership membership, string userName, string newPassword) { membership = membership.AsActual(); MembershipUser membershipUser = new MembershipUser() { Membership = membership, UserName = userName }.AsActual(); if (membershipUser == null) { throw new ArgumentException("The member doest not exists."); } SetPassword(membership, membershipUser, newPassword); membershipUser.UtcLastPasswordChangedDate = DateTime.UtcNow; _provider.Update(membershipUser, membershipUser); }