public HttpResponseMessage Form(string key) { //string template = (string)ActiveModule.ModuleSettings["template"]; JObject json = new JObject(); try { OpenContentSettings settings = ActiveModule.OpenContentSettings(); if (settings.TemplateAvailable) { var formBuilder = new FormBuilder(settings.TemplateDir); json = formBuilder.BuildForm(key); if (UserInfo.UserID > 0 && json["schema"] is JObject) { json["schema"] = FormUtils.InitFields(json["schema"] as JObject, UserInfo); } } return(Request.CreateResponse(HttpStatusCode.OK, json)); } catch (Exception exc) { LoggingUtils.ProcessApiLoadException(this, exc); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exc)); } }
public HttpResponseMessage Form() { string template = (string)ActiveModule.ModuleSettings["template"]; JObject json = new JObject(); try { if (!string.IsNullOrEmpty(template)) { string templateFilename = HostingEnvironment.MapPath("~/" + template); string schemaFilename = Path.GetDirectoryName(templateFilename) + "\\" + "schema.json"; json["schema"] = JsonUtils.GetJsonFromFile(schemaFilename); if (UserInfo.UserID > 0 && json["schema"] is JObject) { json["schema"] = OpenContent.Components.Form.FormUtils.InitFields(json["schema"] as JObject, UserInfo); } // default options string optionsFilename = Path.GetDirectoryName(templateFilename) + "\\" + "options.json"; if (File.Exists(optionsFilename)) { string fileContent = File.ReadAllText(optionsFilename); if (!string.IsNullOrWhiteSpace(fileContent)) { JObject optionsJson = JObject.Parse(fileContent); json["options"] = optionsJson; } } // language options optionsFilename = Path.GetDirectoryName(templateFilename) + "\\" + "options." + DnnUtils.GetCurrentCultureCode() + ".json"; if (File.Exists(optionsFilename)) { string fileContent = File.ReadAllText(optionsFilename); if (!string.IsNullOrWhiteSpace(fileContent)) { JObject optionsJson = JObject.Parse(fileContent); json["options"] = json["options"].JsonMerge(optionsJson); } } // view string viewFilename = Path.GetDirectoryName(templateFilename) + "\\" + "view.json"; if (File.Exists(viewFilename)) { string fileContent = File.ReadAllText(viewFilename); if (!string.IsNullOrWhiteSpace(fileContent)) { JObject viewJson = JObject.Parse(fileContent); json["view"] = viewJson; } } // language view viewFilename = Path.GetDirectoryName(templateFilename) + "\\" + "view." + DnnUtils.GetCurrentCultureCode() + ".json"; if (File.Exists(viewFilename)) { string fileContent = File.ReadAllText(viewFilename); if (!string.IsNullOrWhiteSpace(fileContent)) { JObject viewJson = JObject.Parse(fileContent); json["view"] = json["view"].JsonMerge(viewJson);; } } } return(Request.CreateResponse(HttpStatusCode.OK, json)); } catch (Exception exc) { LoggingUtils.ProcessApiLoadException(this, exc); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, exc)); } }