Публикация

Автоматическая прокрутка виджетов на странице 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 комментариев
Показать все комментарии