Вопрос

Ограничение видимости вкладки (TAB) пользователями с разными Ролями

Добрый день,

просьба подсказать, как можно реализовать сокрытие вкладок для определенной роли в UnitSysAdmin для версии 7.10.

Нашла на портале похожий вопрос, но не до конца понятен код.

https://community.terrasoft.ru/questions/kak-otobrazat-tab-po-usloviu-v-74

спасибо!

Нравится

3 комментария
Лучший ответ
1) Для получения роли советую использовать любезно написанный Севостьяновичем Ильей Сергеевичем миксин по ссылке https://community.terrasoft.ua/tags/opredelit-rol
2) Дальше передать в функцию полученный результат (работает способ начиная с версии 7.12.4, описано в описании релиза https://academy.terrasoft.ru/documents/bpmonline-release-notes-7-12-4 в модуле "OAuth20AppPage")

visibleTab: function(role){
    if(Role1){
        var tab = this.$TabsCollection.get("Tab1"); // "Tab1" - имя вкладки
        tab.set("Visible", true); // "Visible" - ключ свойства, true - значение свойства
    }
    ......
}

3) Через Init при загрузке страницы все это запускаем (думаю роли меняютьяся не часто потому отслеживание изменения в реальном времени не нужно)
1) Для получения роли советую использовать любезно написанный Севостьяновичем Ильей Сергеевичем миксин по ссылке https://community.terrasoft.ua/tags/opredelit-rol
2) Дальше передать в функцию полученный результат (работает способ начиная с версии 7.12.4, описано в описании релиза https://academy.terrasoft.ru/documents/bpmonline-release-notes-7-12-4 в модуле "OAuth20AppPage")

visibleTab: function(role){
    if(Role1){
        var tab = this.$TabsCollection.get("Tab1"); // "Tab1" - имя вкладки
        tab.set("Visible", true); // "Visible" - ключ свойства, true - значение свойства
    }
    ......
}

3) Через Init при загрузке страницы все это запускаем (думаю роли меняютьяся не часто потому отслеживание изменения в реальном времени не нужно)

Александр Тыра,

cпасибо!

Находите в элементах diff вашу вкладку: "name": "Tab62a4b2e3TabLabelGridLayout1729d7bb" - пример.

Далее в "values":{

//прописываете

//видимость по функции

"visible": {

                        "bindTo": "IdUser1"

                    },

}

После в

methods{

//пишите функцию:

IdUser1:function(){

            var x;

   x=Terrasoft.SysValue.CURRENT_USER.value;

            if (x==="id вашего пользователя - можно найти в сотрудниках"){

                return true;    

}else{

return false;

}

Показать все комментарии