public IActionResult ArticlesPopup(KnowledgebaseArticleModel.AddRelatedArticleModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageKnowledgebase)) { return(AccessDeniedView()); } if (model.SelectedArticlesIds != null) { var article = _knowledgebaseService.GetKnowledgebaseArticle(model.ArticleId); foreach (var id in model.SelectedArticlesIds) { if (id != article.Id) { if (!article.RelatedArticles.Contains(id)) { article.RelatedArticles.Add(id); } } } _knowledgebaseService.UpdateKnowledgebaseArticle(article); } ViewBag.RefreshPage = true; return(View(model)); }
public virtual void DeleteKnowledgebaseRelatedArticle(KnowledgebaseArticleModel.AddRelatedArticleModel model) { var article = _knowledgebaseService.GetKnowledgebaseArticle(model.ArticleId); var related = _knowledgebaseService.GetKnowledgebaseArticle(model.Id); if (article == null || related == null) { throw new ArgumentNullException("No article found with specified id"); } string toDelete = ""; foreach (var item in article.RelatedArticles) { if (item == related.Id) { toDelete = item; } } if (!string.IsNullOrEmpty(toDelete)) { article.RelatedArticles.Remove(toDelete); } _knowledgebaseService.UpdateKnowledgebaseArticle(article); }
public async Task <IActionResult> ArticlesPopup(KnowledgebaseArticleModel.AddRelatedArticleModel model) { if (model.SelectedArticlesIds != null) { await _knowledgebaseViewModelService.InsertKnowledgebaseRelatedArticle(model); } ViewBag.RefreshPage = true; return(View(model)); }
public IActionResult RelatedArticlesAddPopupList(DataSourceRequest command, KnowledgebaseArticleModel.AddRelatedArticleModel model) { var articles = _knowledgebaseService.GetKnowledgebaseArticlesByName(model.SearchArticleName, command.Page - 1, command.PageSize); var gridModel = new DataSourceResult(); gridModel.Data = articles.Select(x => x.ToModel()); gridModel.Total = articles.TotalCount; return(Json(gridModel)); }
public async Task <IActionResult> RelatedArticleDelete(KnowledgebaseArticleModel.AddRelatedArticleModel model) { if (model.ArticleId == null || model.Id == null) { throw new ArgumentNullException("Article id expected "); } await _knowledgebaseViewModelService.DeleteKnowledgebaseRelatedArticle(model); return(new JsonResult("")); }
public IActionResult RelatedArticlesAddPopupList(DataSourceRequest command, KnowledgebaseArticleModel.AddRelatedArticleModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageKnowledgebase)) { return(AccessDeniedView()); } var articles = _knowledgebaseService.GetKnowledgebaseArticlesByName(model.SearchArticleName, command.Page - 1, command.PageSize); var gridModel = new DataSourceResult(); gridModel.Data = articles.Select(x => x.ToModel()); gridModel.Total = articles.TotalCount; return(Json(gridModel)); }
public virtual async Task InsertKnowledgebaseRelatedArticle(KnowledgebaseArticleModel.AddRelatedArticleModel model) { var article = await _knowledgebaseService.GetKnowledgebaseArticle(model.ArticleId); foreach (var id in model.SelectedArticlesIds) { if (id != article.Id) { if (!article.RelatedArticles.Contains(id)) { article.RelatedArticles.Add(id); } } } await _knowledgebaseService.UpdateKnowledgebaseArticle(article); }
public IActionResult ArticlesPopup(string articleId) { var model = new KnowledgebaseArticleModel.AddRelatedArticleModel(); model.ArticleId = articleId; model.AvailableArticles.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Common.All"), Value = " " }); var articles = _knowledgebaseService.GetKnowledgebaseArticles(); foreach (var a in articles) { model.AvailableArticles.Add(new SelectListItem { Text = a.Name, Value = a.Id.ToString() }); } return(View(model)); }
public IActionResult RelatedArticleDelete(KnowledgebaseArticleModel.AddRelatedArticleModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProducts)) { return(AccessDeniedView()); } if (model.ArticleId == null || model.Id == null) { throw new ArgumentNullException("Article id expected "); } var article = _knowledgebaseService.GetKnowledgebaseArticle(model.ArticleId); var related = _knowledgebaseService.GetKnowledgebaseArticle(model.Id); if (article == null || related == null) { throw new ArgumentNullException("No article found with specified id"); } string toDelete = ""; foreach (var item in article.RelatedArticles) { if (item == related.Id) { toDelete = item; } } if (!string.IsNullOrEmpty(toDelete)) { article.RelatedArticles.Remove(toDelete); } _knowledgebaseService.UpdateKnowledgebaseArticle(article); return(new NullJsonResult()); }