UNPKG

@kldit/cms

Version:

A CMS Framework for @kldit/mvc

62 lines (54 loc) 1.28 kB
const CMS = require('@kldit/cms/lib/CMS'); const util = require('@kldit/mvc/lib/util'); const LayoutObject = require('@kldit/cms/lib/LayoutObject'); module.exports = async function (cms) { var ctPath = cms.currentTable.join(","); var json = { title: util.renderJsLine(cms.page.edit.title, cms), toolbar: [], "modal-params": cms.page.edit["modal-params"], optsbar: [], container: [] }; var form = { type: "form", action: "edit-content/save/" + ctPath + "/" + cms.rawMapId, method: "post", buttons: { submit: { position: "toolbar", title: cms.page.edit["submit-button-name"] ? cms.page.edit["submit-button-name"] : "Salvar", class: "btn-primary" }, cancel: { position: "toolbar", title: "Cancelar", class: "btn-default" } }, subs: [] }; if(cms.page.edit.readonly) { delete form.buttons.submit; form.readonly = true; form.buttons.cancel.title = "Fechar"; } if(cms.page.edit.action) { form.action = util.renderJsLine(cms.page.edit.action, cms); } var edit = cms.page.edit; var l = edit.layout ? edit.layout : 'layout'; var layout = CMS.config[cms.mapName][l]; for(var obj of layout) { form.subs.push(await LayoutObject.create(obj, cms)); } json.container.push(form); return json; }