Автоматическая прокрутка виджетов на странице Dashboard (графиков, аналитика, итоги)
6 июня 2018 02:49
Вопрос
Необходимо вывести дашборды на плазму, но все они не помещаются. Как добавить автоматическую прокрутку страницы?
Ответ
Можно создать свой «виджет» в котором описать всю необходимую логику на языке javascript. Инициировать ее в методе init() виджета. Потом добавить его на страницу виджетов.
Для этого необходимо:
1) В конфигурации создать модуль (не указывать родительский) - например UsrDashboardHelper.
2) Сохранить модуль и перезагрузить приложение.
3) Выбрать виджет в режиме редактирования отчетности.
Пример простого виджета, который каждые 5 секунд автоматически прокручивает страницу отчетов вверх и вниз:
define("UsrDashboardHelper", ["ext-base", "terrasoft", "sandbox"], function(Ext, Terrasoft, sandbox) {
var getView = function() {
var config = {
id: "UsrDashboardHelper",
selectors: {
wrapEl: "#UsrDashboardHelper"
},
items: []
};
return Ext.create("Terrasoft.Container", config);
};
return {
timerId: 0,
flag: 0,
myTimer: function() {
console.log("tik.");
if (this.flag === 0) {
window.scrollTo(0,800);
this.flag = 1;
} else {
window.scrollTo(0,0);
this.flag = 0;
}
},
init: function() {
console.log("UsrDashboardHelper init in: " + sandbox.id);
this.timerId = setInterval(this.myTimer, 5000);
},
render: function(renderTo) {
var view = getView();
view.render(renderTo);
},
destroy: function() {
console.log("UsrDashboardHelper is offline.");
clearInterval(this.timerId);
}
};
});
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать