public string RenderFlatTaxaAsLink(BlogPost post, string taxonomyFieldName) { var baseUrl = string.Empty; var currentProvider = SiteMapBase.GetCurrentProvider(); if (currentProvider == null || currentProvider != null && currentProvider.CurrentNode == null) { return string.Empty; } else { var currentNode = currentProvider.CurrentNode as PageSiteNode; if (currentNode == null) { baseUrl = currentProvider.CurrentNode.Url; } else { var firstPageDataNode = RouteHelper.GetFirstPageDataNode(currentNode, true); if (!currentNode.IsGroupPage || !(firstPageDataNode.Url != currentProvider.CurrentNode.Url)) { baseUrl = currentProvider.CurrentNode.Url; } else { baseUrl = firstPageDataNode.Url; } } } var tagList = ""; var tags = post.GetValue<TrackedList<Guid>>(taxonomyFieldName); if (tags != null && tags.Count() > 0) { tagList = " | "; var taxManager = TaxonomyManager.GetManager(); foreach (var tag in tags) { var t = taxManager.GetTaxon<FlatTaxon>(tag); var url = string.Format("{0}/-in-{1}/{2}/{3}", VirtualPathUtility.ToAbsolute(baseUrl), t.Taxonomy.Name, t.Taxonomy.Name, t.UrlName); var link = string.Format("<a class='tag' href='{0}'><span>{1}</span></a>", url, t.Title).ToString(); tagList += link; } } return tagList; }
public string RenderFlatTaxaAsLink(BlogPost post, string taxonomyFieldName) { var baseUrl = string.Empty; var currentProvider = SiteMapBase.GetCurrentProvider(); if (currentProvider == null || currentProvider != null && currentProvider.CurrentNode == null) { return(string.Empty); } else { var currentNode = currentProvider.CurrentNode as PageSiteNode; if (currentNode == null) { baseUrl = currentProvider.CurrentNode.Url; } else { var firstPageDataNode = RouteHelper.GetFirstPageDataNode(currentNode, true); if (!currentNode.IsGroupPage || !(firstPageDataNode.Url != currentProvider.CurrentNode.Url)) { baseUrl = currentProvider.CurrentNode.Url; } else { baseUrl = firstPageDataNode.Url; } } } var tagList = ""; var tags = post.GetValue <TrackedList <Guid> >(taxonomyFieldName); if (tags != null && tags.Count() > 0) { tagList = " | "; var taxManager = TaxonomyManager.GetManager(); foreach (var tag in tags) { var t = taxManager.GetTaxon <FlatTaxon>(tag); var url = string.Format("{0}/-in-{1}/{2}/{3}", VirtualPathUtility.ToAbsolute(baseUrl), t.Taxonomy.Name, t.Taxonomy.Name, t.UrlName); var link = string.Format("<a class='tag' href='{0}'><span>{1}</span></a>", url, t.Title).ToString(); tagList += link; } } return(tagList); }
/// <summary> /// Constructor. /// </summary> /// <param name="sfContent">The sf content.</param> public BlogPostModel(BlogPost sfContent) : base(sfContent) { if (sfContent != null) { Content = sfContent.Content; Summary = sfContent.Summary; Status = sfContent.Status; Slug = sfContent.UrlName; Active = sfContent.Status == ContentLifecycleStatus.Live && sfContent.Visible; //GET PARENT BLOG Parent = new BlogModel(sfContent.Parent); //CONSTRUCT URL BASED ON PARENT BLOG Url = sfContent.GetFullUrl(sfContent.DefaultPageId); if (sfContent.Parent.DefaultPageId.HasValue) { Url = Parent.Url + Url; } //POPULATE TAXONOMIES TO LIST Categories = sfContent.GetTaxa("Category"); Tags = sfContent.GetTaxa("Tags"); //CALCULATE COMMENTS CommentsCount = BlogsManager.GetManager().GetComments() .Count(c => c.CommentedItemID == sfContent.Id && c.Status == ContentLifecycleStatus.Master); //CUSTOM PROPERTIES if (sfContent.DoesFieldExist("Image")) { Image = sfContent.GetValue <string>("Image"); } // Store original content OriginalContent = sfContent; } }