/// <summary> /// UIForm's OnAfterValidate event handler. /// </summary> protected void EditForm_OnAfterValidate(object sender, EventArgs e) { SubscriberInfo subscriberObj = EditedObject as SubscriberInfo; if (subscriberObj != null) { string emailNew = ValidationHelper.GetString(EditForm.GetFieldValue("SubscriberEmail"), String.Empty); string emailCurrent = subscriberObj.SubscriberEmail; // Check email if (emailNew == string.Empty) { EditForm.StopProcessing = true; ShowError(GetString("Subscriber_Edit.ErrorEmptyEmail")); } else if ((emailNew.ToLowerCSafe() != emailCurrent.ToLowerCSafe()) && (SubscriberInfoProvider.EmailExists(emailNew))) { EditForm.StopProcessing = true; ShowError(GetString("Subscriber_Edit.EmailAlreadyExists")); } } else { EditForm.StopProcessing = true; ShowError(GetString("Subscriber_Edit.SubscriberDoesNotExists")); } }
protected void OnBeforeSave(object sender, EventArgs e) { // Check license if (!SubscriberInfoProvider.LicenseVersionCheck(RequestContext.CurrentDomain, FeatureEnum.Subscribers, ObjectActionEnum.Insert)) { NewForm.StopProcessing = true; ShowError(GetString("LicenseVersionCheck.Subscribers")); } // Set SiteID NewForm.Data.SetValue("SubscriberSiteID", SiteContext.CurrentSiteID); string firstName = ValidationHelper.GetString(NewForm.GetFieldValue("SubscriberFirstName"), string.Empty); string lastName = ValidationHelper.GetString(NewForm.GetFieldValue("SubscriberLastName"), string.Empty); // Set full name NewForm.Data.SetValue("SubscriberFullName", string.Concat(firstName, " ", lastName)); string email = ValidationHelper.GetString(NewForm.GetFieldValue("SubscriberEmail"), string.Empty); // Check email if (email == string.Empty) { NewForm.StopProcessing = true; ShowError(GetString("Subscriber_Edit.ErrorEmptyEmail")); } else if (SubscriberInfoProvider.EmailExists(email)) { NewForm.StopProcessing = true; ShowError(GetString("Subscriber_Edit.EmailAlreadyExists")); } }
/// <summary> /// Sets data to database. /// </summary> protected void btnOK_Click(object sender, EventArgs e) { // Check "Manage subscribers" permission if (!CMSContext.CurrentUser.IsAuthorizedPerResource("cms.newsletter", "managesubscribers")) { RedirectToCMSDeskAccessDenied("cms.newsletter", "managesubscribers"); } string email = txtSubscriberEmail.Text.Trim(); // Check entered values string errorMessage = new Validator().NotEmpty(email, GetString("Subscriber_Edit.ErrorEmptyEmail")) .IsEmail(email, GetString("NewsletterSubscription.ErrorInvalidEmail")) .Result; if (string.IsNullOrEmpty(errorMessage)) { if (!SubscriberInfoProvider.EmailExists(email)) { // Create new subscriber info and set values SubscriberInfo subscriberObj = new SubscriberInfo(); subscriberObj.SubscriberID = 0; subscriberObj.SubscriberLastName = txtSubscriberLastName.Text.Trim(); subscriberObj.SubscriberEmail = email; subscriberObj.SubscriberFirstName = txtSubscriberFirstName.Text.Trim(); subscriberObj.SubscriberFullName = (subscriberObj.SubscriberFirstName + " " + subscriberObj.SubscriberLastName).Trim(); subscriberObj.SubscriberSiteID = CMSContext.CurrentSiteID; subscriberObj.SubscriberGUID = Guid.NewGuid(); if (SubscriberInfoProvider.LicenseVersionCheck(URLHelper.GetCurrentDomain(), FeatureEnum.Subscribers, VersionActionEnum.Insert)) { // Save subscriber to DB SubscriberInfoProvider.SetSubscriberInfo(subscriberObj); // Redirect to edit page URLHelper.Redirect("Subscriber_Frameset.aspx?subscriberid=" + Convert.ToString(subscriberObj.SubscriberID) + "&saved=1"); } else { ShowError(GetString("LicenseVersionCheck.Subscribers")); } } else { ShowError(GetString("Subscriber_Edit.EmailAlreadyExists")); } } else { ShowError(errorMessage); } }
/// <summary> /// DataForm's OnAfterValidate event handler. /// </summary> protected void formCustomFields_OnAfterValidate(object sender, EventArgs e) { // Get subscriber's email FormEngineUserControl control = (FormEngineUserControl)formCustomFields.BasicForm.FieldControls["SubscriberEmail"]; if (control != null) { string mail = ValidationHelper.GetString(control.Value, String.Empty).Trim(); // Get original subscriber SubscriberInfo subscriberObj = SubscriberInfoProvider.GetSubscriberInfo(subscriberId); if (subscriberObj != null) { // Check the email changes if ((subscriberObj.SubscriberEmail.ToLowerCSafe() != mail.ToLowerCSafe()) && (SubscriberInfoProvider.EmailExists(mail))) { // Show error message if the email address is already used by another subscriber formCustomFields.BasicForm.StopProcessing = true; ShowError(GetString("Subscriber_Edit.EmailAlreadyExists")); } } else { formCustomFields.BasicForm.StopProcessing = true; ShowError(GetString("Subscriber_Edit.SubscriberDoesNotExists")); } } }