Пример #1
0
        /// <summary>
        /// Inserts a localized message template
        /// </summary>
        /// <param name="localizedMessageTemplate">Localized message template</param>
        public void InsertLocalizedMessageTemplate(LocalizedMessageTemplate localizedMessageTemplate)
        {
            if (localizedMessageTemplate == null)
                throw new ArgumentNullException("localizedMessageTemplate");

            localizedMessageTemplate.BccEmailAddresses = CommonHelper.EnsureNotNull(localizedMessageTemplate.BccEmailAddresses);
            localizedMessageTemplate.BccEmailAddresses = CommonHelper.EnsureMaximumLength(localizedMessageTemplate.BccEmailAddresses, 200);
            localizedMessageTemplate.Subject = CommonHelper.EnsureNotNull(localizedMessageTemplate.Subject);
            localizedMessageTemplate.Subject = CommonHelper.EnsureMaximumLength(localizedMessageTemplate.Subject, 200);
            localizedMessageTemplate.Body = CommonHelper.EnsureNotNull(localizedMessageTemplate.Body);

            _context.LocalizedMessageTemplates.AddObject(localizedMessageTemplate);
            _context.SaveChanges();
        }
        protected MessageTemplate Save()
        {
            MessageTemplate messageTemplate = this.MessageService.GetMessageTemplateById(this.MessageTemplateId);

            foreach (RepeaterItem item in rptrLanguageDivs.Items)
            {
                if (item.ItemType == ListItemType.Item || item.ItemType == ListItemType.AlternatingItem)
                {
                    var ddlEmailAccount = (DropDownList)item.FindControl("ddlEmailAccount");
                    var txtBCCEmailAddresses = (TextBox)item.FindControl("txtBCCEmailAddresses");
                    var txtSubject = (TextBox)item.FindControl("txtSubject");
                    var txtBody = (FCKeditor)item.FindControl("txtBody");
                    var cbActive = (CheckBox)item.FindControl("cbActive");
                    var lblLanguageId = (Label)item.FindControl("lblLanguageId");

                    int emailAccountId = int.Parse(ddlEmailAccount.SelectedValue);
                    int languageId = int.Parse(lblLanguageId.Text);
                    string BCCEmailAddresses = txtBCCEmailAddresses.Text;
                    string subject = txtSubject.Text;
                    string body = txtBody.Value;
                    bool active = cbActive.Checked;

                    var content = this.MessageService.GetLocalizedMessageTemplate(this.MessageTemplate.Name, languageId);
                    if (content == null)
                    {
                        content = new LocalizedMessageTemplate()
                        {
                            MessageTemplateId = this.MessageTemplateId,
                            LanguageId = languageId,
                            EmailAccountId = emailAccountId,
                            BccEmailAddresses = BCCEmailAddresses,
                            Subject = subject,
                            Body = body,
                            IsActive = active
                        };
                        this.MessageService.InsertLocalizedMessageTemplate(content);
                    }
                    else
                    {
                        content.EmailAccountId = emailAccountId;
                        content.BccEmailAddresses = BCCEmailAddresses;
                        content.Subject = subject;
                        content.Body = body;
                        content.IsActive = active;
                        this.MessageService.UpdateLocalizedMessageTemplate(content);
                    }
                }
            }

            return messageTemplate;
        }