public static string RenderWebApp(WebApplication webApp, IDataRenderer renderer) { var tableDeMatiere = new TableDeMatiere(); string entete = RenderStyle() + renderer.RenderTitle("SONES - Portail SharePoint", 1) + renderer.RenderTitle("Documentation Fonctionnelles et Techniques\n***\n", 1); string t = renderer.RenderTitle("Introduction :", 2) + renderer.RenderTitle("Applications web :", 2) + renderer.RenderTitle("Sites :\n", 3); foreach (var site in webApp.Sites) { t += RenderSite(site, webApp.Features, tableDeMatiere, renderer); } return(entete + t); }
private static string RenderFeature(CustomFeature feature, TableDeMatiere tableDeMatiere, IDataRenderer renderer) { string rendu = ""; if (feature.DependentOn.Count > 0) { rendu += "Cette fonctionnalité depend des fonctionnalités suivantes :\n" + new HTMLRenderer().RenderUnorderedList(feature.DependentOn); } rendu += RenderGroups(feature.Groups, renderer); rendu += RenderLists(feature.Lists, feature, renderer); string tF = string.Format("Fonctionnalité {0}", feature.Name); if (string.IsNullOrWhiteSpace(rendu)) { return(""); } return(renderer.RenderTitle(tF, 6) + rendu); }
//public static string RenderTableOfContent(TableOfContent tableDeMatiere, IDataRenderer dataRenderer) //{ // int _lastLevel = 4; // string _markdownTable = ""; // foreach (var titre in tableDeMatiere.Titres) // { // var titres = new List<string>(); // var title = dataRenderer.RenderLink(titre.Title, titre.LinkId); // if (titre.Level == _lastLevel) // { // _markdownTable += "<ol type='I'><li>" + titre.Title + "</li>\n"; // } // } // return "</ol>" + _markdownTable; //} private static string RenderSite(Site site, List <CustomFeature> webAppFeatures, TableDeMatiere tableDeMatiere, IDataRenderer renderer) { var enable = ""; var modele = ""; switch (site.Template) { case "STS#1": { modele = "Blank Site(1033)"; ; break; } case "STS#0": { modele = "Team Site (1033)"; break; } case "GLOBAL#0": { modele = "Global template (1033)"; break; } } string titre = string.Format("Site {0}", site.Name); string rendu = renderer.RenderTitle(titre, 4); rendu += string.Format(_formatSite, site.Description, modele); var fonctionnaliteSiteTable = new DataTable(); fonctionnaliteSiteTable.Header.Add("Description"); fonctionnaliteSiteTable.Header.Add("Activer"); foreach (var sitefeature in site.Features) { if (sitefeature.Enable == true) { enable = "Oui"; } else { enable = "Non"; } var row = new List <string>(); row.Add(sitefeature.Description); row.Add(enable); fonctionnaliteSiteTable.Rows.Add(row); } rendu += renderer.RenderTitle("Fonctionnalités du site", 5) + new HTMLRenderer().RenderTable(fonctionnaliteSiteTable); var fonctionnaliteWebTable = new DataTable(); fonctionnaliteWebTable.Header.Add("Description"); fonctionnaliteWebTable.Header.Add("Activer"); foreach (var webfeature in site.WebFeatures) { if (webfeature.Enable == true) { enable = "Oui"; } else { enable = "Non"; } var row = new List <string>(); row.Add(webfeature.Description); row.Add(enable); fonctionnaliteWebTable.Rows.Add(row); } rendu += renderer.RenderTitle("Fonctionnalités du web", 5) + new HTMLRenderer().RenderTable(fonctionnaliteWebTable); rendu += renderer.RenderTitle("Fonctionnalités personnalisées", 5); foreach (var customfeature in site.CustomFeatures) { var customFeatureInfo = webAppFeatures.FirstOrDefault(ft => ft.Name == customfeature); if (customFeatureInfo != null) { rendu += RenderFeature(customFeatureInfo, tableDeMatiere, renderer); } } return(rendu); }