public List <IPublishedContent> GetIPublishedContentNodes(string nodeTypeAlias) { var contentCriteria = SearchHelpers.CreateContentCriteria().NodeTypeAlias(nodeTypeAlias).Compile(); var cachedContent = UHelper.TypedSearch(contentCriteria).ToList(); return(cachedContent); }
public IPublishedContent GetIPublishedNodeByAlias(string nodeTypeAlias) { var contentCriteria = SearchHelpers.CreateContentCriteria().NodeTypeAlias(nodeTypeAlias).Compile(); var cachedContent = UHelper.TypedSearch(contentCriteria).FirstOrDefault(); return(cachedContent); }
private List <ProjectViewModel> GetProjectsInternal(string website, bool onlyFeatured = false) { var response = new List <ProjectViewModel>(); var site = GetIPublishedContentNodes(Website.ModelTypeAlias).FirstOrDefault(x => x.Name.ToLower().Contains(website.ToLower())); var projectListPage = site?.Children.FirstOrDefault(x => x.DocumentTypeAlias.Contains(nameof(ProjectList))); if (projectListPage != null) { var projectCriteria = SearchHelpers.CreateContentCriteria().NodeTypeAlias(Project.ModelTypeAlias).And().ParentId(projectListPage.Id).Compile(); var cachedProjects = onlyFeatured ? UHelper.TypedSearch(projectCriteria).Take(4).OrderBy(x => x.Name).ToList() : UHelper.TypedSearch(projectCriteria).OrderBy(x => x.Name).ToList(); if (cachedProjects.Any()) { response.AddRange(cachedProjects.Select(cachedProject => IPubishedContentToPvm(cachedProject))); } } return(response); }