private static string RenderPosts()
{
if (Posts.Count == 0)
{
return string.Format("<p>{0}</p>", labels.none);
}
var sb = new StringBuilder();
sb.Append("<ul class=\"recentPosts\" id=\"recentPosts\">");
foreach (var post in Posts.Where(post => post.IsVisibleToPublic))
{
var rating = Math.Round(post.Rating, 1).ToString(CultureInfo.InvariantCulture);
const string Link = "<li><a href=\"{0}\">{1}</a>{2}{3}</li>";
var comments = string.Format("<span>{0}: {1}</span>", labels.comments, post.ApprovedComments.Count);
var rate = string.Format("<span>{0}: {1} / {2}</span>", labels.rating, rating, post.Raters);
if (!BlogSettings.Instance.DisplayCommentsOnRecentPosts || !BlogSettings.Instance.IsCommentsEnabled)
{
comments = null;
}
if (!BlogSettings.Instance.DisplayRatingsOnRecentPosts || !BlogSettings.Instance.EnableRating)
{
rate = null;
}
if (post.Raters == 0)
{
rate = string.Format("<span>{0}</span>", labels.notRatedYet);
}
sb.AppendFormat(Link, post.RelativeOrAbsoluteLink, HttpUtility.HtmlEncode(post.Title), comments, rate);
}
sb.Append("</ul>");
return sb.ToString();
}