private void DeleteExistedMailTemplates() { var mailTemplateFolderXpath = XPathHelper.GetXpath( _documentTypeAliasProvider.GetDataFolder(), _documentTypeAliasProvider.GetMailTemplateFolder()); var publishedContent = _umbracoHelper.TypedContentSingleAtXPath(mailTemplateFolderXpath); if (publishedContent == null) { return; } bool IsForRemove(IPublishedContent content) { var templateType = content.GetPropertyValue <NotificationTypeEnum>(UmbracoContentMigrationConstants.MailTemplate.EmailTypePropName); return(templateType.In(NotificationTypeEnum.CommentLikeAdded, NotificationTypeEnum.MonthlyMail)); } var publishedContentToRemove = publishedContent.Children.Where(IsForRemove); var contentToRemove = _contentService.GetByIds(publishedContentToRemove.Select(c => c.Id)).ToList(); contentToRemove.ForEach(c => _contentService.Delete(c)); }
public ExecutionResult Execute() { var mailTemplateXpath = XPathHelper.GetXpath( _documentTypeAliasProvider.GetDataFolder(), _documentTypeAliasProvider.GetMailTemplateFolder(), _documentTypeAliasProvider.GetMailTemplate()); var templates = _umbracoHelper.TypedContentAtXPath(mailTemplateXpath); var mailTemplateFolderXpath = XPathHelper.GetXpath(_documentTypeAliasProvider.GetDataFolder(), _documentTypeAliasProvider.GetMailTemplateFolder()); if (!templates.Any()) { var folder = _umbracoHelper.TypedContentSingleAtXPath(mailTemplateFolderXpath); if (folder != null) { var folderContent = _contentService.GetById(folder.Id); _contentService.Delete(folderContent); } } return(ExecutionResult.Success); }
private IEnumerable <IPublishedContent> GetMailTemplates() { var mailTemplateXpath = XPathHelper.GetXpath(_documentTypeAliasProvider.GetDataFolder(), _documentTypeAliasProvider.GetMailTemplateFolder(), _documentTypeAliasProvider.GetMailTemplate()); return(_umbracoHelper.TypedContentAtXPath(mailTemplateXpath)); }