private void RegisterEmail(string email, string storeID) { bool isCorrectFormat = checkEmailFormat(email, storeID); if (isCorrectFormat) { string emailHash = SecurityUtilities.HashMD5(email + WebConfiguration.SecretKey); Store store = DataAccessContext.StoreRepository.GetOne(storeID); NewsLetter newsLetter = DataAccessContext.NewsLetterRepository.GetOne(email, store); if (newsLetter.IsNull) { newsLetter.Email = email; newsLetter.EmailHash = emailHash; newsLetter.JoinDate = DateTime.Now; newsLetter.StoreID = storeID; DataAccessContext.NewsLetterRepository.Create(newsLetter); uxMessage.DisplayMessage(Resources.NewsletterManager.RegisterSuccess); ClearField(); } else { uxMessage.DisplayError(Resources.NewsletterManager.RegisterAlready); } } else { uxMessage.DisplayError(Resources.NewsletterManager.RegisterInvalidEmail); } }
private void RegisterEmailUpdate(string email, string emailOld, string storeID, string storeIDOld) { bool isCorrectFormat = checkEmailFormat(email, storeID); if (isCorrectFormat) { string emailHash = SecurityUtilities.HashMD5(email + WebConfiguration.SecretKey); string emailOldHash = SecurityUtilities.HashMD5(emailOld + WebConfiguration.SecretKey); Store store = DataAccessContext.StoreRepository.GetOne(storeID); Store storeOld = DataAccessContext.StoreRepository.GetOne(storeIDOld); NewsLetter newsLetter = DataAccessContext.NewsLetterRepository.GetOne(email, store); if (newsLetter.IsNull) { NewsLetter newsLetterOld = DataAccessContext.NewsLetterRepository.GetOne(emailOld, storeOld); newsLetterOld.EmailHash = emailHash; DataAccessContext.NewsLetterRepository.Update(newsLetterOld, email, storeID); } else { uxMessage.DisplayError(Resources.NewsletterManager.RegisterAlready); } } else { uxMessage.DisplayError(Resources.NewsletterManager.RegisterInvalidEmail); } }
private void RegisterEmail() { StoreRetriever storeRetriever = new StoreRetriever(); Store store = storeRetriever.GetStore(); if (Email == null | Email == string.Empty) { EmailDiv.Visible = false; uxSubscribeLabel.Text = "[$RegisterEmpty]"; return; } Regex emailregex = new Regex(@"\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"); Match m = emailregex.Match(Email); if (m.Success) { string emailHash = SecurityUtilities.HashMD5(Email + WebConfiguration.SecretKey); NewsLetter newsLetter = DataAccessContext.NewsLetterRepository.GetOne(Email, store); if (newsLetter.IsNull) { newsLetter.Email = Email; newsLetter.EmailHash = emailHash; newsLetter.JoinDate = DateTime.Now; newsLetter.StoreID = store.StoreID; DataAccessContext.NewsLetterRepository.Create(newsLetter); uxSubscribeLabel.Text = "[$RegisterSuccess]"; uxNewsletterSubScribeTR.Visible = false; } else { uxSubscribeLabel.Text = "[$RegisterAlready]"; } } else { uxNewsletterSubScribeTR.Visible = true; uxSubscribeLabel.ForeColor = System.Drawing.Color.Red; uxSubscribeLabel.Text = "[$RegisterInvalidEmail]"; } uxEmailLabel.Text = Email; }
private void UpdateEmailSubscriber(string email, string emailOld) { StoreRetriever storeRetriever = new StoreRetriever(); Store store = storeRetriever.GetStore(); string emailHash = SecurityUtilities.HashMD5(email + WebConfiguration.SecretKey); if (uxSubscribeCheckBox.Checked) { NewsLetter newsLetterOld = DataAccessContext.NewsLetterRepository.GetOne(emailOld, store); NewsLetter newsLetter = DataAccessContext.NewsLetterRepository.GetOne(email, store); if (newsLetterOld.IsNull) { if (newsLetter.IsNull) { newsLetter.Email = email; newsLetter.EmailHash = emailHash; newsLetter.JoinDate = DateTime.Now; newsLetter.StoreID = store.StoreID; DataAccessContext.NewsLetterRepository.Create(newsLetter); } } else { if (MoreThanOneUserSubscribeWithEmail(emailOld)) { // No need to delete old email if (newsLetter.IsNull) { newsLetter.Email = email; newsLetter.EmailHash = emailHash; newsLetter.JoinDate = DateTime.Now; newsLetter.StoreID = store.StoreID; DataAccessContext.NewsLetterRepository.Create(newsLetter); } } else { if (String.Compare(email, emailOld) != 0) { // No need to keep old email if (newsLetter.IsNull) { newsLetterOld.EmailHash = emailHash; DataAccessContext.NewsLetterRepository.Update(newsLetterOld, email, store.StoreID); } else { DataAccessContext.NewsLetterRepository.DeleteEmailNoHash(emailOld, store); } } } } } else { if (!MoreThanOneUserSubscribeWithEmail(email)) { DataAccessContext.NewsLetterRepository.DeleteEmail(emailHash, store); } } }
private void AddCustomer() { if (Page.IsValid) { StoreRetriever storeRetriever = new StoreRetriever(); Store store = storeRetriever.GetStore(); bool validateCountry, validateState, validateShippingCountry, validateShippingState; bool validateBilling, validateShipping; validateBilling = uxCountryState.Validate(out validateCountry, out validateState); if (uxUseBillingAsShipping.Checked) { if (!validateBilling) { uxBillingCountryStateDiv.Visible = true; uxBillingCountryStateMessage.Text = ValidateCountryAndState(validateCountry, validateState); return; } } else { validateShipping = uxShippingCountryState.Validate(out validateShippingCountry, out validateShippingState); if (!validateBilling && !validateShipping) { uxBillingCountryStateDiv.Visible = true; uxBillingCountryStateMessage.Text = ValidateCountryAndState(validateCountry, validateState); uxShippingCountryStateDiv.Visible = true; uxShippingCountryStateMessage.Text = ValidateCountryAndState(validateShippingCountry, validateShippingState); return; } else if (!validateBilling) { uxBillingCountryStateDiv.Visible = true; uxBillingCountryStateMessage.Text = ValidateCountryAndState(validateCountry, validateState); return; } else if (!validateShipping) { uxShippingCountryStateDiv.Visible = true; uxShippingCountryStateMessage.Text = ValidateCountryAndState(validateShippingCountry, validateShippingState); return; } } MembershipUser user = Membership.GetUser(uxUserName.Text.Trim()); if (user == null && !UsernameExits(uxUserName.Text.Trim())) { if (uxUseBillingAsShipping.Checked) { CopyBillingDetailsToShipping(); } if (uxSubscribeCheckBox.Checked) { string Email = uxEmail.Text.Trim(); string EmailHash = SecurityUtilities.HashMD5(Email + WebConfiguration.SecretKey); NewsLetter newsLetter = DataAccessContext.NewsLetterRepository.GetOne(Email, store); if (newsLetter.IsNull) { newsLetter.Email = Email; newsLetter.EmailHash = EmailHash; newsLetter.JoinDate = DateTime.Now; newsLetter.StoreID = store.StoreID; DataAccessContext.NewsLetterRepository.Create(newsLetter); } } string id; Customer customer = SetUpCustomer(); customer = DataAccessContext.CustomerRepository.Save(customer); id = customer.CustomerID; Membership.CreateUser(uxUserName.Text.Trim(), uxPassword.Text, uxEmail.Text.Trim()); Roles.AddUserToRole(uxUserName.Text, "Customers"); if (IsCustomerAutoApprove) { FormsAuthentication.SetAuthCookie(uxUserName.Text, false); } SetCartShippingAddress(customer); SetTaxExempt(); try { SendMailToCustomer(uxEmail.Text, uxUserName.Text); SendMailToMerchant(uxEmail.Text, uxUserName.Text, id); AffiliateHelper.UpdateAffiliateReference(uxUserName.Text); RedirectPage(); } catch (Exception) { ErrorMessage = "[$SentErrorMessage]"; ClearData(); } } else { ErrorMessage = "[$User Existed]"; } } }