44 lines
1.0 KiB
JavaScript
44 lines
1.0 KiB
JavaScript
/*eslint-disable */
|
|
import store from "../store";
|
|
import gzapi from "./gzapi";
|
|
import _ from "../libs/lodash.min.js";
|
|
|
|
|
|
function addDataKeyNames(obj) {
|
|
//debugger;
|
|
//iterate the array of objects
|
|
//if it has a "type" property then it's a custom field so add its data key name
|
|
|
|
|
|
for (var i = 0; i < obj.length; i++) {
|
|
if(obj[i].type){
|
|
obj[i]["dataKey"]="c"+parseInt(obj[i].fld.replace( /^\D+/g, ''))
|
|
}
|
|
}
|
|
|
|
//return the whole thing again now translated
|
|
return obj;
|
|
}
|
|
|
|
|
|
export default {
|
|
get(formKey) {
|
|
return new Promise(function getFormTemplate(resolve) {
|
|
if (!_.has(store.state.formCustomTemplate, formKey)) {
|
|
//fetch and populate the store
|
|
gzapi.get("formcustom/" + formKey).then(res => {
|
|
if (res.error) {
|
|
throw res.error;
|
|
}
|
|
|
|
store.commit("addFormCustomTemplateItem", {
|
|
formKey: formKey,
|
|
value: addDataKeyNames(JSON.parse(res.data.template))
|
|
});
|
|
resolve();
|
|
});
|
|
}
|
|
});
|
|
}
|
|
};
|