Как добавить свою вкладку в окно обновления пользователя?

Здравствуйте!
Поделитесь пожалуйста мануалом или подскажите что делаю не так.

Пытаюсь добавить свою вкладку в окно обновления юзера.
Создал плагин на событие OnUserFormRender в котором подключаю js файл:
<?php
if ($modx->event->name != 'OnUserFormRender') return '';

$modx->controller->addLastJavascript('/assets/components/customModx/js/mgr/user/tab.js');
Код tab.js:
Ext.override(MODx.panel.User,{
    getParentFields: MODx.panel.User.prototype.getFields,
    
    getFields: function(config) {
        var parentFields = this.getParentFields.call(this,config);
        
        for (var i in parentFields) {
            var item = parentFields[i];

            if (item.id == 'modx-user-tabs') {
                item.items.push({
                    id: 'my-custom-tab'
                    ,title: 'Доступ к курсам'
                    ,layout: 'form'
                    ,defaults: { border: false ,autoHeight: true }
                    ,hideMode: 'offsets'
                    ,items: [{
                        html: '<p>Включение и отключение доступа пользователя к видео-урокам</p>'
                        ,xtype: 'modx-description'
                    },{
                        //Тут остальные элементы
                    }]
                });
            }
        }

        return parentFields;
    }
});
Вкладка, к сожалению, не появилась. В Network вижу, что js-файл подключился.
Подскажите кто может, что тут не так. Заранее спасибо!
Harry
29 сентября 2021, 12:08
modx.pro
169
0

Комментарии: 4

Наумов Алексей
29 сентября 2021, 13:01
1
0
Привет, посмотри здесь:
modx.pro/howto/8889
modx.pro/help/1806
    Harry
    29 сентября 2021, 15:37
    0
    Видел) Делал по этому видео www.youtube.com/watch?v=Klu3nqOy81M&t=816s. В окно редактирования ресурса получилось добавить без проблем, но по такой же схеме не получается добавить в окно обновления юзера.
      Роман
      30 сентября 2021, 10:17
      0
      Ext.override(MODx.panel.User,{
          getParentFields: MODx.panel.User.prototype.getFields,
          
          getFields: function(config) {
              var parentFields = this.getParentFields.call(this,config);
      		parentFields.push({
      			id: 'my-custom-tab'
      			,title: 'Доступ к курсам'
      			,layout: 'form'
      			,defaults: { border: false ,autoHeight: true }
      			,hideMode: 'offsets'
      			,items: [{
      				html: '<p>Включение и отключение доступа пользователя к видео-урокам</p>'
      				,xtype: 'modx-description'
      			},{
      				//Тут остальные элементы
      			}]
      		});
      
              return parentFields;
          }
      });
        Harry
        30 сентября 2021, 14:11
        0
        Благодарю, сегодня попробую и отпишусь
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    4