public ManagerResponse <CreateUserResult, CommerceUser> RegisterUserCustomer(IStorefrontContext storefrontContext, string userName, string password, string email, string secondaryEmail) { Assert.ArgumentNotNull(storefrontContext, nameof(storefrontContext)); Assert.ArgumentNotNullOrEmpty(userName, nameof(userName)); Assert.ArgumentNotNullOrEmpty(password, nameof(password)); CreateUserResult createUserResult1; try { var createUserRequest = new CreateUserRequest(userName, password, email, storefrontContext.CurrentStorefront.ShopName); createUserRequest.Properties.Add("SecondEmail", secondaryEmail); createUserResult1 = CustomerServiceProvider.CreateUser(createUserRequest); //createUserResult1 = CustomerServiceProvider.CreateUser(new CreateUserRequest(userName, password, email, storefrontContext.CurrentStorefront.ShopName)); if (!createUserResult1.Success) { Helpers.LogSystemMessages(createUserResult1.SystemMessages, createUserResult1); } else if (createUserResult1.Success) { if (createUserResult1.CommerceUser == null) { if (createUserResult1.SystemMessages.Count == 0) { createUserResult1.Success = false; createUserResult1.SystemMessages.Add(new SystemMessage() { Message = storefrontContext.GetSystemMessage("User Already Exists") }); } } } } catch (MembershipCreateUserException ex) { CreateUserResult createUserResult2 = new CreateUserResult { Success = false }; createUserResult1 = createUserResult2; createUserResult1.SystemMessages.Add(new SystemMessage() { Message = ErrorCodeToString(storefrontContext, ex.StatusCode) }); } catch (Exception ex) { CreateUserResult createUserResult2 = new CreateUserResult { Success = false }; createUserResult1 = createUserResult2; createUserResult1.SystemMessages.Add(new SystemMessage() { Message = storefrontContext.GetSystemMessage("Unknown Membership Provider Error") }); } CreateUserResult serviceProviderResult = createUserResult1; return(new ManagerResponse <CreateUserResult, CommerceUser>(serviceProviderResult, serviceProviderResult.CommerceUser)); }
/// <summary> /// Rules engine condition implementation to determine if the name of an index /// contains a specific value. /// </summary> /// <param name="ruleContext">Rules processing context.</param> /// <returns>Returns true if the name of the index contains the specified value.</returns> protected override bool Execute(T ruleContext) { Assert.ArgumentNotNull(ruleContext, "ruleContext"); Assert.ArgumentNotNull(ruleContext.IndexName, "ruleContext.IndexName)"); Assert.ArgumentNotNullOrEmpty(this.MatchIndexNameAgainst, "MatchIndexNameAgainst"); return(ruleContext.IndexName.ToLower().Contains( this.MatchIndexNameAgainst.ToLower())); }
/// <summary> /// Rules engine condition implementation to determine /// if the name of the database associated with an index /// matches a specific value. /// </summary> /// <param name="ruleContext">Rules processing context.</param> /// <returns>Returns true if the name of the database associated with the index /// matches the specified value.</returns> protected override bool Execute(T ruleContext) { Assert.ArgumentNotNull(ruleContext, "ruleContext"); Assert.ArgumentNotNull(ruleContext.IndexedDatabaseName, "ruleContext.IndexedDatabaseName)"); Assert.ArgumentNotNullOrEmpty(this.MatchIndexedDatabaseNameAgainst, "MatchIndexedDatabaseNameAgainst"); return(string.Equals( ruleContext.IndexedDatabaseName, this.MatchIndexedDatabaseNameAgainst, StringComparison.InvariantCultureIgnoreCase)); }
/// <summary> /// Empty implementation. /// </summary> /// <param name="searchIndex">Search index.</param> public void Initialize(CS.ISearchIndex searchIndex) { Assert.ArgumentNotNull(searchIndex, "searchIndex"); Assert.ArgumentNotNullOrEmpty(searchIndex.Name, "searchIndex.Name"); if (!string.IsNullOrEmpty(this.RuleDatabaseName)) { return; } string[] parts = searchIndex.Name.Split('_'); if (parts.Length < 2) { return; } if (SC.StringUtil.Contains( parts[1], SC.Configuration.Factory.GetDatabaseNames())) { this.RuleDatabaseName = parts[1]; } }