Настройка Fileattach для групп ресурсов
А как настроить отображение вкладки «Файлы» только для определенной группы ресурсов?
У нас менеджеры могут изменять только те ресурсы, которые входят в доступные им группы ресурсов, при этом они видят другие ресурсы, но изменить их не могут. Вкладка «Файлы» появляется на всех ресурсах и менеджеры могут закачать файл к любому ресурсу и удалить файлы у любых ресурсов (менять не могут, а файлы добавить-удалить получается, что могут).
У нас менеджеры могут изменять только те ресурсы, которые входят в доступные им группы ресурсов, при этом они видят другие ресурсы, но изменить их не могут. Вкладка «Файлы» появляется на всех ресурсах и менеджеры могут закачать файл к любому ресурсу и удалить файлы у любых ресурсов (менять не могут, а файлы добавить-удалить получается, что могут).
Комментарии: 1
Сам спросил, сам ответил. Вдруг кому надо будет.
Пишем плагин
Пишем плагин
<?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. Когда менеджер переключается на вкладку «Файлы», то если у менеджера нет кнопки «Сохранить» содержимое вкладки «Файлы» скрывается. Т.о. менеджер не может ни добавить, ни удалить файлы к ресурсу, к которому у него нет доступа на изменение.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.