There is a new implementation of _saveDataReply in ValuesManager. This has a bug.
Problem
The browser fails with error getItems is not a function.
ISC_Forms.js@63182:
Possible solution:
Check if getItems is a function.
Problem
The browser fails with error getItems is not a function.
ISC_Forms.js@63182:
Code:
if (!this.suppressServerDataSync && response && response.status >= 0 && data != null) { if (isc.isAn.Array(data)) data = data[0]; if (request.data) request.data = isc.shallowClone(request.data); var nestedDataStructure = false, members = this.getMembers(); for (var i = 0; i < members.length; i++) { if (members[i].dataPath != null) { nestedDataStructure = true; } else if (!isc.isA.DynamicForm(members[i])) { var items = members[i].getItems(); // THIS IS UNSAFE. It is not guaranteed getItems() is a function. if (items[i].dataPath != null) { nestedDataStructure = true; } } if (nestedDataStructure) break; }
Possible solution:
Check if getItems is a function.
Code:
if (!this.suppressServerDataSync && response && response.status >= 0 && data != null) { if (isc.isAn.Array(data)) data = data[0]; if (request.data) request.data = isc.shallowClone(request.data); var nestedDataStructure = false, members = this.getMembers(); for (var i = 0; i < members.length; i++) { if (members[i].dataPath != null) { nestedDataStructure = true; } else if (!isc.isA.DynamicForm(members[i]) && isA.Function(members[i].getItems)) { var items = members[i].getItems(); if (items[i].dataPath != null) { nestedDataStructure = true; } } if (nestedDataStructure) break; }
Comment