Ext JS для modx

js функции для ExtJs modx revolution

Документация по extjs

Общие параметры

Переменная Описание
_('modx_id') аналогично что и $modx->lexicon('modx_id')

MODx.grid.Grid

Переменные Описание Значения
multi_select Для включения множественного выделения через Ctrl или Shift true/false

MODx.combo.ComboBox

Переменные Описание Значения
id идентификатор элемента. К нему потом можно обращаться как Ext.getCmp('идентификатор');
url запрос процессору connector.php
baseParams параметры запроса {limit: 30}
fields JSON массив полей для выборки ['value', 'text']
paging включение/отключение пагинации true/false
pageLimit количество результатов на одной странице 10
pageSize количество выводимых страниц 10
remoteSort сортировать результаты на сервере true/false
sorters сортировать результаты на сервере [{property: 'col1',direction: 'DESC'}]
columns JSON массив столбцов таблицы [{header: 'Имя', dataIndex: 'id', width: 20, sortable: true}]
tbar Вывод значений в верхнюю часть таблицы ['->', this.getSearchField()]
listeners список событий
allowBlank Сделать не обязательным для заполнения true/false
multi_select Для включения множественного выделения Ctrl или Shift true/false

sorters: [{property: 'col1',direction: 'DESC'}]

Получает любое значение любой запущенной формы

var config = Ext.getCmp('minishop2-window-order-update');

Создание поля контенера для добавления изображения

    {
        xtype: 'container'
        ,border: true
        ,anchor: '100%'
        ,layout: 'form'
        ,items:[{
            xtype: 'button'
            ,id: 'product-image-button'
            ,cls: 'x-btn-text bmenu' //'x-btn-icon bmenu' :
            ,style: 'float:right;'
            ,disabled: false
            ,text: "Browse Image"
            ,listeners: {
                'click':{
                    fn: function(btn) {
                        if (Ext.isEmpty(this.browser)) {
                            this.browser = MODx.load({
                                xtype: 'modx-browser'
                                ,returnEl: null
                                ,id: 'product-image-browser'
                                ,multiple: false
                                ,config: MODx.config
                                ,source: MODx.config.default_media_source || MODx.source
                                ,allowedFileTypes: 'gif,jpg,jpeg,png'
                                ,listeners: {
                                    'select': {fn: function(data) {
                                        //MODx.fireResourceFormChange();
                                        alert(Ext.encode(data));
                                    },scope:this}
                                }
                            });
                        }
                        this.browser.show(btn);
                        return true;
                    }
                    ,scope:this
                }
            }
        }]
    }

Авто фокус на элементе

Ext.getCmp('mspre-filter-context').focus(true,10);

Проверка существования Xtype

Ext.ComponentMgr.isRegistered('mspre-window-update-vendor')

tbar

{
            xtype: 'mspre-field-search',
            width: width || 250,
            listeners: {
                search: {
                    fn: function (field) {
                        this._doSearch(field);
                    }, scope: this
                },
                clear: {
                    fn: function (field) {
                        field.setValue('');
                        this._clearSearch();
                    }, scope: this
                },
            }
        };

listeners

listeners: {
    search: {
        fn: function (field) {
            this._doSearch(field);
              }, scope: this
    },
    clear: {
        fn: function (field) {
            field.setValue('');
            this._clearSearch();
                }, scope: this
            },
    }
};

Меню для getTopBar

Добавляем кнопку в массив с контекстным меню

            new Ext.Button({
               text: '<i class="icon icon-download"></i>&nbsp;'+_('mspre_transactions_actions'),
               cls: 'x-btn-text mspre-actions-menu',
               menu: {
                    id: 'exportusers-x-menu',
                    items: [
                        {
                            text: String.format(
                              '<span class="{0}"><i class="x-menu-item-icon {1}"></i>{2}</span>',
                              '', 'icon icon-remove', _('mspre_transactions_canceled')
                            ),
                            handler: this.canceledOperations,
                            scope: this,
                        },
                        {
                            text: String.format(
                              '<span class="{0}"><i class="x-menu-item-icon {1}"></i>{2}</span>',
                              '', 'icon icon-trash-o red', _('mspre_transactions_remove')
                            ),
                            handler: this.removeOperations,
                            scope: this,
                        }
                    ]
                },
            }),
03 сентября 2018, 11:08    933

Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.

    Наверх