public static string RenderLists(List <List> lists, CustomFeature customFeature, IDataRenderer renderer) { if (lists.Count == 0) { return(""); } string rendu = ""; foreach (var list in lists) { rendu += RenderList(list, customFeature.ContentTypes, customFeature.SiteColumns, renderer); if (string.IsNullOrWhiteSpace(rendu)) { return(""); } if (list.Views.Count > 0) { var listViews = new List <string>(); foreach (var view in list.Views) { listViews.Add(view.Name); } rendu += renderer.RenderTitle("Vues :", 9) + new HTMLRenderer().RenderUnorderedList(listViews); } } return(renderer.RenderTitle("Listes :", 7) + rendu); }
private static string RenderList(List list, List <ContentType> contentTypes, List <SiteColumn> siteColumns, IDataRenderer renderer) { var columnsTable = new DataTable(); columnsTable.Header.Add("Colonne"); columnsTable.Header.Add("Type"); columnsTable.Header.Add("Remarque"); var rows = new List <List <string> >(); foreach (var item in list.ContentTypes) { var contentType = contentTypes.FirstOrDefault(ct => ct.Name == item); rows.AddRange( GetContentTypeFields(contentType, siteColumns, list.SiteColumns, list.Fields, columnsTable)); } columnsTable.Rows = rows; if (columnsTable.Rows.Count == 0) { return(""); } return(renderer.RenderTitle($"Liste {list.Title} :", 8) + renderer.RenderParagraphe(list.Description) + renderer.RenderTitle("Structure de données :", 9) + new HTMLRenderer().RenderTable(columnsTable)); }
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); }
private static string RenderGroups(List <Group> groups, IDataRenderer renderer) { if (groups.Count == 0) { return(""); } var groupTable = new DataTable(); groupTable.Header.Add("Groupe"); groupTable.Header.Add("Description"); groupTable.Header.Add("Membres"); foreach (var group in groups) { var row = new List <string>(); row.Add(group.Name); row.Add(group.Description); var membres = new HTMLRenderer().RenderUnorderedList(group.Members); row.Add(membres); groupTable.Rows.Add(row); } return(renderer.RenderTitle("Groupes :", 7) + new HTMLRenderer().RenderTable(groupTable)); }
//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); }