diff --git a/src/main/java/org/wise/portal/domain/project/impl/ProjectMetadataImpl.java b/src/main/java/org/wise/portal/domain/project/impl/ProjectMetadataImpl.java index 28445b1d3..04a5efafc 100644 --- a/src/main/java/org/wise/portal/domain/project/impl/ProjectMetadataImpl.java +++ b/src/main/java/org/wise/portal/domain/project/impl/ProjectMetadataImpl.java @@ -132,7 +132,6 @@ public class ProjectMetadataImpl implements ProjectMetadata, Serializable { @Setter private String lessonPlan; - @Column(name = "standards", length = 5120000, columnDefinition = "mediumtext") @Getter @Setter private String standards; @@ -204,10 +203,16 @@ public class ProjectMetadataImpl implements ProjectMetadata, Serializable { @Setter private String researchProjects; + @Getter + @Setter + private String disciplines; + @Getter @Setter private String resources; + private String standardsDefault = "{\"commonCore\": [], \"ngss\": [], \"learningForJustice\": []}"; + @Getter @Setter private String unitType; @@ -254,6 +259,12 @@ public void populateFromJSON(JSONObject metadataJSON) { } setResearchProjects(researchProjects.toString()); + JSONArray disciplines = metadataJSON.optJSONArray("disciplines"); + if (disciplines == null) { + disciplines = new JSONArray(); + } + setDisciplines(disciplines.toString()); + JSONArray resources = metadataJSON.optJSONArray("resources"); if (resources == null) { resources = new JSONArray(); @@ -332,10 +343,7 @@ public void populateFromJSON(JSONObject metadataJSON) { } setLessonPlan(lessonPlan); - String standards = metadataJSON.optString("standards", ""); - if (standards.equals("null")) { - standards = ""; - } + String standards = metadataJSON.optString("standards", this.standardsDefault); setStandards(standards); JSONObject standardsAddressed = metadataJSON.optJSONObject("standardsAddressed"); @@ -471,12 +479,17 @@ public String toJSONString() { metadata.put("tools", new JSONObject()); } - String standardsAddressedString = metadata.getString("standardsAddressed"); - if (standardsAddressedString != null && standardsAddressedString != "null") { - JSONObject standardsAddressedJSON = new JSONObject(standardsAddressedString); - metadata.put("standardsAddressed", standardsAddressedJSON); + String standardsString = metadata.getString("standards"); + if (standardsString != null && standardsString != "null") { + JSONObject standardsJSON; + try { + standardsJSON = new JSONObject(standardsString); + } catch (JSONException e) { + standardsJSON = new JSONObject(standardsDefault); + } + metadata.put("standards", standardsJSON); } else { - metadata.put("standardsAddressed", new JSONObject()); + metadata.put("standards", new JSONObject()); } String parentProjectsString = metadata.getString("parentProjects"); @@ -495,6 +508,14 @@ public String toJSONString() { metadata.put("researchProjects", new JSONArray()); } + String disciplinesString = metadata.getString("disciplines"); + if (disciplinesString != null && disciplinesString != "null") { + JSONArray disciplinesJSON = new JSONArray(disciplinesString); + metadata.put("disciplines", disciplinesJSON); + } else { + metadata.put("disciplines", new JSONArray()); + } + String resourcesString = metadata.getString("resources"); if (resourcesString != null && resourcesString != "null") { JSONArray resourcesJSON = new JSONArray(resourcesString);