minishop2 заказы из разных контекстов

Есть сайт, в нем несколько контекстов. Для каждого контекста свой контент менеджер, другие контексты он не видит И ЗАКАЗЫ minishop2 которые сделаны не в его контексте он тоже не должен видеть.
Мне показалось, что проще всего это организовать через фильтр по контексту, если научить фильтр выставлять первый в списке контекст (в моем случае и единственный для менеджера) и не выдавать результаты если поле пустое. Ну или еще каким-то способом заставить этот фильтр работать.


Как я понял, править нужно этот файл:
assets/components/minishop2/js/mgr/orders/orders.form.js

А в нем вот этот кусок:

{
            xtype: 'minishop2-combo-context',
            id: config.id + '-context',
			minChars: 3,
            emptyText: _('ms2_orders_form_context'),
            name: 'context',
            allowBlank: false,
            listeners: {
                select: {
                    fn: function () {
                        this.fireEvent('change')
                    }, scope: this
                }
            }
        }
Но вот что именно править — тут наши полномочия всё, закончились. Попробовал поставить allowBlank: false но особо никаких изменений, просто красным подсвечивается.
Помогите, люди добрые. Или может каким-то другим способом можно ограничить менеджера его контекстом в заказах minishop2?
Algirdas
27 июня 2020, 20:31
modx.pro
604
0

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

Algirdas
29 июня 2020, 17:38
0
Что, ни у кого никаких мыслей?
    Руслан Алеев
    29 июня 2020, 18:58
    0
    Думаю, туда нужно передать value в зависимости от пользователя, условно будет так:

    ...
    name: 'context',
    value: (user.id === 'admin') ? 'web' : 'contect_key_2',
    allowBlank: true,
    ...

    allowBlank: true, проверяет обязательность заполнения поля, это не то.
    p.s. Правда я не уверен видит ли таблица заказов miniShop2 данные текущего пользователя MODX.
      Руслан Алеев
      29 июня 2020, 19:44
      0
      Но вообще грамотнее писать плагин, который генерил бы js, меняющий значение в поле. Вариант выше при обновлении miniShop2 затрется.
    Максим
    30 июня 2020, 10:39
    0
    А не проще ли переопределить гриды и возможно потребуется переопределить процессор getlist, что бы сразу получать нужные заказы и не мешать работе фильтров? А фильтрацию по контексту в таком случае просто скрыть.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      4