Настройка Fileattach для групп ресурсов

А как настроить отображение вкладки «Файлы» только для определенной группы ресурсов?
У нас менеджеры могут изменять только те ресурсы, которые входят в доступные им группы ресурсов, при этом они видят другие ресурсы, но изменить их не могут. Вкладка «Файлы» появляется на всех ресурсах и менеджеры могут закачать файл к любому ресурсу и удалить файлы у любых ресурсов (менять не могут, а файлы добавить-удалить получается, что могут).
Александр
07 июля 2016, 12:27
modx.pro
3
1 009
0

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

Александр
11 июля 2016, 10:57
0
Сам спросил, сам ответил. Вдруг кому надо будет.
Пишем плагин
<?php
switch ($modx->event->name) {
case 'OnDocFormPrerender':
    $modx->regClientStartupHTMLBlock('<script type="text/javascript">
        Ext.onReady( function(){
            var tabPanel = Ext.getCmp("modx-resource-tabs");
            var btn = Ext.getCmp("modx-abtn-save");

            if( tabPanel!=null ){
                tabPanel.on(\'tabchange\', function(parent,selectedTab){ 
		    if( !btn ){
	                Ext.getCmp("files-tab").hide();
		    }
            });
            }
        });               
    </script>');
}
Вешаем его на событие OnDocFormPrerender. Когда менеджер переключается на вкладку «Файлы», то если у менеджера нет кнопки «Сохранить» содержимое вкладки «Файлы» скрывается. Т.о. менеджер не может ни добавить, ни удалить файлы к ресурсу, к которому у него нет доступа на изменение.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    1