public virtual KnowledgebaseArticle UpdateKnowledgebaseArticleModel(KnowledgebaseArticle knowledgebaseArticle, KnowledgebaseArticleModel model) { knowledgebaseArticle = model.ToEntity(knowledgebaseArticle); knowledgebaseArticle.UpdatedOnUtc = DateTime.UtcNow; knowledgebaseArticle.Locales = model.Locales.ToLocalizedProperty(knowledgebaseArticle, x => x.Name, _urlRecordService); model.SeName = knowledgebaseArticle.ValidateSeName(model.SeName, knowledgebaseArticle.Name, true); knowledgebaseArticle.SeName = model.SeName; knowledgebaseArticle.AllowComments = model.AllowComments; _knowledgebaseService.UpdateKnowledgebaseArticle(knowledgebaseArticle); _urlRecordService.SaveSlug(knowledgebaseArticle, model.SeName, ""); _customerActivityService.InsertActivity("UpdateKnowledgebaseArticle", knowledgebaseArticle.Id, _localizationService.GetResource("ActivityLog.UpdateKnowledgebaseArticle"), knowledgebaseArticle.Name); return(knowledgebaseArticle); }
public virtual async Task <KnowledgebaseArticle> UpdateKnowledgebaseArticleModel(KnowledgebaseArticle knowledgebaseArticle, KnowledgebaseArticleModel model) { knowledgebaseArticle = model.ToEntity(knowledgebaseArticle); knowledgebaseArticle.UpdatedOnUtc = DateTime.UtcNow; knowledgebaseArticle.Locales = await model.Locales.ToTranslationProperty(knowledgebaseArticle, x => x.Name, _seoSettings, _slugService, _languageService); model.SeName = await knowledgebaseArticle.ValidateSeName(model.SeName, knowledgebaseArticle.Name, true, _seoSettings, _slugService, _languageService); knowledgebaseArticle.SeName = model.SeName; knowledgebaseArticle.AllowComments = model.AllowComments; await _knowledgebaseService.UpdateKnowledgebaseArticle(knowledgebaseArticle); await _slugService.SaveSlug(knowledgebaseArticle, model.SeName, ""); await _customerActivityService.InsertActivity("UpdateKnowledgebaseArticle", knowledgebaseArticle.Id, _translationService.GetResource("ActivityLog.UpdateKnowledgebaseArticle"), knowledgebaseArticle.Name); return(knowledgebaseArticle); }
protected virtual List <LocalizedProperty> UpdateLocales(KnowledgebaseArticle article, KnowledgebaseArticleModel model) { List <LocalizedProperty> localized = new List <LocalizedProperty>(); foreach (var local in model.Locales) { var seName = article.ValidateSeName(local.SeName, local.Name, false); _urlRecordService.SaveSlug(article, seName, local.LanguageId); if (!(String.IsNullOrEmpty(local.Name))) { localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "Name", LocaleValue = local.Name, }); } if (!(String.IsNullOrEmpty(local.Content))) { localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "Content", LocaleValue = local.Content, }); } if (!(String.IsNullOrEmpty(local.MetaDescription))) { localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "MetaDescription", LocaleValue = local.MetaDescription, }); } if (!(String.IsNullOrEmpty(local.MetaKeywords))) { localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "MetaKeywords", LocaleValue = local.MetaKeywords, }); } if (!(String.IsNullOrEmpty(local.MetaTitle))) { localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "MetaTitle", LocaleValue = local.MetaTitle, }); } if (!(String.IsNullOrEmpty(seName))) { localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "SeName", LocaleValue = seName, }); } } return(localized); }