Fix missing column(s) / duplicated headers / missing customfield filters

Can't use 'rows' namespace for headers, it misses some things and triggers autorepeat in some templates.
This commit is contained in:
nathan 2025-01-20 09:20:54 -07:00
parent dcd03e0df6
commit a88c53b9f5

View File

@ -2420,9 +2420,20 @@ export class et2_nextmatch extends et2_DOMWidget implements et2_IResizeable, et2
{
const template = <Et2Template>loadWebComponent("et2-template", {
"id": template_name,
class: "hideme",
content: "rows"
class: "hideme"
}, this);
// Some apps send header data in 'rows', which is the wrong namespace. Passing it into the header can trigger
// autorepeat in some cases, so pass just the non-numeric keys into header namespace. Some headers also use content
// in the parent nm namespace, just to complicate things.
let rows = this.getArrayMgr("content").getEntry("rows");
Object.keys(rows).forEach(k =>
{
if(isNaN(k))
{
this.getArrayMgr("content").data[k] = rows[k];
}
});
if(this.template)
{
// Stop early to prevent unneeded processing, and prevent infinite