Работа админки: как? [решено]

Jun 21, 2016

Понимаю, что заголовок не информативен, но не могу придумать ничего короткого и конкретного. Наверно это где-то описывалось, но я и ключевые слова не могу выдумать, чтобы искать. Подскажите, вот в админке допустим стандартно запускается. Вот допустим создается функция MODx.form.Handler Вот она расширена через Ext.extend и передается в Ext.reg. Это все же функция, используемая в качестве конструктора. Но вот мы видим, что почему-то мы обращаемся к объекту MODx.form.Handler.errorExt(a.result,frm) так, будто где-то вызвано

MODx.form.Handler = Ext.ComponentMgr.create({xtype: "test-form-handler"});

Но где это происходит и как?

UPD

Вот здесь все случается

Ext.onReady(function() {
    MODx.util.JSONReader = MODx.load({ xtype: 'modx-json-reader' });
    MODx.form.Handler = MODx.load({ xtype: 'modx-form-handler' });
    MODx.msg = MODx.load({ xtype: 'modx-msg' });
});

MODx.load передает аргументы в Ext.ComponentMgr.create, как и писал выше. В php многое из этого бы наверно делалось бы статичными методами, но не смотрел подробно эти объекты, не уверен…