diff --git a/assets/javascripts/discourse/lib/wizard-schema.js.es6 b/assets/javascripts/discourse/lib/wizard-schema.js.es6 index 24695d15..24bda1d3 100644 --- a/assets/javascripts/discourse/lib/wizard-schema.js.es6 +++ b/assets/javascripts/discourse/lib/wizard-schema.js.es6 @@ -72,7 +72,7 @@ const field = { required: null, type: null, condition: null, - tag_groups: null + tag_groups: null, }, types: {}, mapped: ["prefill", "content", "condition", "index"], @@ -242,6 +242,10 @@ const custom_field = { type: ["string", "boolean", "integer", "json"], }; +export function buildFieldTypes(types) { + wizardSchema.field.types = types; +} + field.type = Object.keys(field.types); action.type = Object.keys(action.types); @@ -261,7 +265,7 @@ export function buildFieldValidations(validations) { export function filterValues(currentWizard, feature, attribute, values = null) { values = values || wizardSchema[feature][attribute]; - if (currentWizard.allowGuests) { + if (currentWizard && currentWizard.allowGuests) { const filteredFeature = wizardSchema.filters.allow_guests[feature]; if (filteredFeature) { const filtered = filteredFeature[attribute]; diff --git a/assets/javascripts/discourse/routes/admin-wizards-wizard.js.es6 b/assets/javascripts/discourse/routes/admin-wizards-wizard.js.es6 index 6e42bcbd..b23b63f6 100644 --- a/assets/javascripts/discourse/routes/admin-wizards-wizard.js.es6 +++ b/assets/javascripts/discourse/routes/admin-wizards-wizard.js.es6 @@ -1,5 +1,5 @@ import DiscourseRoute from "discourse/routes/discourse"; -import { buildFieldValidations } from "../lib/wizard-schema"; +import { buildFieldTypes, buildFieldValidations } from "../lib/wizard-schema"; import EmberObject, { set } from "@ember/object"; import { A } from "@ember/array"; import { all } from "rsvp"; @@ -11,6 +11,7 @@ export default DiscourseRoute.extend({ }, afterModel(model) { + buildFieldTypes(model.field_types); buildFieldValidations(model.realtime_validations); return all([