//************************************************************* // Please don't do this, this is just for demo // In a real world situation, logic should not be // in the controller and if you do this a poor kitten dies //************************************************************* private RelatedContent GetRelatedArticles(IRelatedItemConfiguration configItem) { RelatedContent viewModel = new RelatedContent(configItem, null); if (configItem.FilterRoot != null) { foreach (var item in configItem.FilterRoot.Children) { if (item.TemplateName == "ArticlePage") { viewModel.RelatedItems.Add(item); } } } return(viewModel); }
private RelatedContent GetRelatedTaggedContent(IRelatedItemConfiguration configItem, IRelatedContentFilter parameters) { int count = 0; RelatedContent viewModel = new RelatedContent(configItem, parameters); foreach (var item in configItem.FilterRoot.Children) { if (count == parameters.DisplayCount) { break; } if (parameters.Tags.Select(x => x.Text).Intersect(item.ProductTags.Select(x => x.Text)).Any()) { viewModel.RelatedItems.Add(item); count++; } } return(viewModel); }
public RelatedContent(IRelatedItemConfiguration content, IRelatedContentFilter parameters) { Content = content; Parameters = parameters; RelatedItems = new List <IPage>(); }