The story continues:
I put alert()’s all over both suspicious source files and debugged with Chrome Javascript console.
Result:
- The properties grid runs ok and initialises completely.
- The Home panel triggers an exception at the following line of code, towards the end:
Tariffs.panel.Home.superclass.constructor.call(this,config);
I’m not sure what this bit does as it then dwindles off into the mists of ExtJs and my debugging comes to a halt. I tried commenting it out and that did away with the exception but also made my Home panel disappear; which I already expected.
To be thorough, I did the same for the Batcher home panel and compared the various variable contents with each other. I could not see any obvious differences but had to pass on the details as it gets quite complex at that level.
EDIT: below is the console output for each of the variables contained in that last line of code.
Tariffs:
Object
home.panel.js:42
Tariffs.panel:
Object
home.panel.js:43
Tariffs.panel.Home: function (config) {
// alert("h1");
config = config || {};
// alert("h2");
Ext.apply(config,{
border: false
,baseCls: 'modx-formpanel'
,items: [{
html: '<h2>'+_('tariffs.management')+'</h2>'
,border: false
,cls: 'modx-page-header'
},{
xtype: 'modx-tabs'
,bodyStyle: 'padding: 10px'
,defaults: { border: false ,autoHeight: true }
,border: true
,activeItem: 0
,hideMode: 'offsets'
,items: [{
title: _('tariffs.tariffs_tab')
,items: [{
html: '<p>'+_('tariffs.management_desc')+'</p><br />'
,border: false
},{
xtype: 'tariffs-tree-tariffs'
,preventRender: true
}]
},{
title: _('tariffs.cottages_tab')
,items: [{
html: '<p>'+_('tariffs.cottages_management_desc')+'</p><br />'
,border: false
},{
xtype: 'tariffs-grid-cottages'
,preventRender: true
}]
}]
}]
});
// alert("h3");
console.log('Tariffs: ', Tariffs);
console.log('Tariffs.panel: ', Tariffs.panel);
console.log('Tariffs.panel.Home: ', Tariffs.panel.Home);
console.log('Tariffs.panel.Home.superclass: ', Tariffs.panel.Home.superclass);
console.log('Tariffs.panel.Home.superclass.constructor: ', Tariffs.panel.Home.superclass.constructor);
Tariffs.panel.Home.superclass.constructor.call(this,config);
// alert("h4");
}
home.panel.js:44
Tariffs.panel.Home.superclass:
Object
constructor: function (A){A=A||{};Ext.applyIf(A,{cls:"modx-panel",title:""});MODx.Panel.superclass.constructor.call(this,A);this.config=A;}
override: function (E){for(var D in E){this[D]=E[D]}}
superclass: function (){return D}
supr: function (){return D}
__proto__: Object
home.panel.js:45
Tariffs.panel.Home.superclass.constructor: function (A){A=A||{};Ext.applyIf(A,{cls:"modx-panel",title:""});MODx.Panel.superclass.constructor.call(this,A);this.config=A;}
@splittingred: would you know of any things I could try at this point? I’m at wits end....