public override void GenerateHtml() { JsonObject output = new JsonObject(); string sProfile = Hm.Request("profile"); if (!Str.IsEmpty(sProfile)) { CCProfile prf = CC.Current.Profiles[sProfile]; if (prf != null) { JsonArray sarr = output.SetArray("Scopes") as JsonArray; foreach (CCScope scope in prf.Scopes) { sarr.EltAdd(scope.Name); } JsonArray arr = output.SetArray("MetaDataKeys") as JsonArray; List<XDoc> MetaDataKeys = prf.Doc.EltList("MetaDataDef"); foreach (XDoc metakey in MetaDataKeys) { if (bool.Parse(metakey.Value("Active"))) { JsonObject key = arr.EltAddObject() as JsonObject; key.Set("Name", metakey.Value("EntityName")); key.Set("MaxDisplay", int.Parse(metakey.Value("Max"))); key.Set("MinimumOccurrence", int.Parse(metakey.Value("Threshold"))); } } JsonArray relatedarr = output.SetArray("RelatedTerms") as JsonArray; List<XDoc> RelatedKeys = prf.Doc.EltList("RelatedTermsDef"); foreach (XDoc metakey in RelatedKeys) { if (bool.Parse(metakey.Value("Active"))) { JsonObject key = relatedarr.EltAddObject() as JsonObject; key.Set("Name", metakey.Value("EntityName")); key.Set("MaxDisplay", int.Parse(metakey.Value("Max"))); key.Set("MinimumOccurrence", int.Parse(metakey.Value("Threshold"))); } } JsonArray peoplearr = output.SetArray("PeopleDataKeys") as JsonArray; List<XDoc> PeopleDataKeys = prf.Doc.EltList("PeopleDataDef"); foreach (XDoc pmetakey in PeopleDataKeys) { if (bool.Parse(pmetakey.Value("Active"))) { JsonObject key = peoplearr.EltAddObject() as JsonObject; key.Set("Name", pmetakey.Value("EntityName")); key.Set("MaxDisplay", int.Parse(pmetakey.Value("Max"))); key.Set("MinimumOccurrence", int.Parse(pmetakey.Value("Threshold"))); } } JsonArray langarr = output.SetArray("LanguageOptions") as JsonArray; List<XDoc> Languages = prf.Doc.EltList("LanguageOptions"); foreach (XDoc metakey in Languages ) { if (bool.Parse(metakey.Value("Active"))) { JsonObject key = langarr.EltAddObject() as JsonObject; key.Set("label", metakey.Value("LanguageName")); key.Set("value", metakey.Value("LanguageValue")); } } } output.SetValue("ChatterPollID", prf.Doc.Value("ChatterPollID")); output.SetValue("FeedbackGroupId", prf.Doc.Value("FeedbackGroupID")); output.SetValue("BestBetGroupId", prf.Doc.Value("BestBetGroupID")); output.SetValue("MaxAuthors", prf.Doc.Value("MaxAuthors")); output.SetValue("SessionTimeout", prf.Doc.Value("SessionTimeOut")); output.SetValue("MaxRecentSearches", prf.Doc.Value("MaxRecentSearches")); } Hm.SetContentType("application/json"); Hm.Write(Json.Serialize(output, true)); if (!Str.IsEmpty(Hm.Request("callback"))) Hm.Write(")"); }