private bool IsValid(IssueInfo issue) { var stringBuilder = new StringBuilder(); string emailName = txtDisplayName.Text.Trim(); if (!ValidateInput(!String.IsNullOrEmpty(emailName), GetString("NewsletterContentEditor.DisplayNameRequired"), stringBuilder)) { ValidateInput(emailName.Length <= 200, GetString("Newsletter_Edit.ErrorEmailDisplayNameLength"), stringBuilder); } ValidateInput(!String.IsNullOrEmpty(txtSubject.Text.Trim()), GetString("NewsletterContentEditor.SubjectRequired"), stringBuilder); ValidateInput(txtSenderEmail.IsValid(), GetString("Newsletter_Edit.ErrorEmailFormat"), stringBuilder); if (chkIssueUseUTM.Checked) { ValidateInput(!String.IsNullOrEmpty(txtIssueUTMSource.Text.Trim()), GetString("NewsletterContentEditor.UTMSourceRequired"), stringBuilder); } if (issue.IssueForAutomation && !chkIssueForAutomation.Checked && chkIssueForAutomation.Visible) { var namesOfProcessesUsesIssue = NewsletterIssueAutomationHelper.GetProcessNamesWhereIssueIsUsed(issue); var issueUsedInAutomationErrorMessage = CreateNewsletterIssueUsedInAutomationErrorMessage(namesOfProcessesUsesIssue); ValidateInput(!namesOfProcessesUsesIssue.Any(), issueUsedInAutomationErrorMessage, stringBuilder); } alErroMsg.Text = stringBuilder.ToString(); return(String.IsNullOrEmpty(alErroMsg.Text)); }
public void RaiseCallbackEvent(string eventArgument) { confirmMessage = GetString("General.ConfirmDelete"); issueIdToConfirm = ValidationHelper.GetInteger(eventArgument, 0); var issue = GetIssueOrRedirect(issueIdToConfirm); // For issues referenced in a Marketing automation process show different confirmation message. if (issue.IssueForAutomation) { var processNames = NewsletterIssueAutomationHelper.GetProcessNamesWhereIssueIsUsed(issue); if (processNames.Any()) { confirmMessage = String.Format(GetString("newsletter.issue.confirm.emailusedinmarketingautomation"), processNames.Join(Environment.NewLine)); } } }