Example #1
0
    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));
    }
Example #2
0
    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));
            }
        }
    }