Автоматическая прокрутка виджетов на странице Dashboard (графиков, аналитика, итоги)

Вопрос

Необходимо вывести дашборды на плазму, но все они не помещаются. Как добавить автоматическую прокрутку страницы?

Ответ

Можно создать свой «виджет» в котором описать всю необходимую логику на языке 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);
    }
  };
});

 

Нравится

Поделиться

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