private string AddTopLevelHTML(StatuteListing listing) { var pageTitle = "Rhode Island Pharmacy Statutes"; var html = new StringBuilder(); html.AppendLine(Tags.html.Start); //header html.AppendLine(Tags.head.Start); html.AppendLine(Tags.style.Start); html.AppendLine(styleSheetProvider.GetStyleSheet()); html.AppendLine(Tags.style.End); html.AppendLine(Tags.head.End); //body html.AppendLine(Tags.Body.Start); html.AppendLine(Tags.OpenDivWithId("page-title")); html.AppendLine(pageTitle); html.AppendLine(Tags.Div.End); html.AppendLine(Tags.OpenDivWithId("page-status")); html.AppendLine("Last Updated: " + DateTime.Now); html.AppendLine(Tags.Div.End); html.AppendLine(Tags.OpenDivWithId("page-index")); html.AppendLine(CreatePageIndex(listing)); html.AppendLine(Tags.Div.End); html.AppendLine(Tags.OpenDivWithId("page-content")); html.Append(CreatePage(listing)); html.AppendLine(Tags.Div.End); html.AppendLine(); html.AppendLine(Tags.Body.End); html.AppendLine(Tags.html.End); return(html.ToString()); }
private static string CreatePage(StatuteListing listing) { var html = new StringBuilder(); foreach (var title in listing.Titles) { var titleHtml = FormatTitle(title); html.AppendLine(titleHtml); } return(html.ToString()); }
private static string CreatePageIndex(StatuteListing listing) { var html = new StringBuilder(); foreach (var title in listing.Titles) { var titleLine = title.TitleNumber + " " + title.TitleName; html.AppendLine(Tags.H4.Start); html.AppendLine(Tags.AnchorLink(title.LinkID, titleLine)); html.AppendLine(Tags.H4.End); var titleIndex = BuildTitleIndex(title); html.AppendLine(titleIndex); } return(html.ToString()); }
public static StatuteListing BuildListing(List <Page> pages) { ExtractPageElements(pages); var indexPages = GetIndexPages(pages); var chapters = new List <Chapter>(); foreach (var indexPage in indexPages) { var chapter = BuildChapter(indexPage, pages); chapters.Add(chapter); } var listing = new StatuteListing(); listing.Titles = BuildTitles(chapters, pages); return(listing); }
internal string Format(StatuteListing listing) { var html = AddTopLevelHTML(listing); return(html); }