module.exports.submit = function submit(req, res) { const formData = toObj(req.body); const validationErrors = validateFormData(formData); if (validationErrors) { return res.status(400).json(validationErrors); } formHandler.submit(formData, req.files, req.params.form, req.member) .then(function(result) { EventEmitter.emit(formEvent(req.params.form), result); res.status(200).json(result); }, function(errResponse) { res.status(_.get(errResponse, "statusCode", 500)).json(_.get(errResponse, "err", errResponse)); }); };
mapModel = (model) => { if (this.props.mapping) { return this.props.mapping(model); } return formDataToObject.toObj(Object.keys(model).reduce((mappedModel, key) => { const keyArray = key.split('.'); let base = mappedModel; while (keyArray.length) { const currentKey = keyArray.shift(); base[currentKey] = (keyArray.length ? base[currentKey] || {} : model[key]); base = base[currentKey]; } return mappedModel; }, {})); }