...
Блок кода |
---|
|
var widgetGuid = w.general.renderTo;
var $widget = $("#" + widgetGuid);
var widgetWidth = $widget.width();
var widgetHeight = $widget.height();
var filterGuid = "120c138c74534e5687eeb976c33eaf67"; // тут заменить на GUID виджета фильтры, который должен влиять на выбор видео.
var URL_tail = "?autoplay=1&loop=1" // Для удобства задаеме хвост, который будем прибавлять к URL. В данном случае для youtube это включение автовоспроизведения и бесконечного повтора видео.
// Подписываемся на виджет фильтр
visApi().onSelectedValuesChangedListener({guid: "23e756f2f3p1", widgetGuid: filterGuid }, function (info) {
renderWidgetVideo(info.selectedValues[0][0]);
});
//Описываем функцию, которая будет выполняться и возвращать значение link.
function renderWidgetVideo(link) {
$widget.html('<iframe width="' + widgetWidth + '" height="' + widgetHeight + '" src="https://www.youtube.com/embed/' + link + URL_tail + '" ></iframe>'); // конкатенация начала URL (https://www.youtube.com/embed/), переменной link (в которой уникальная часть uri видосика) и переменной URL_tail
}
// Дополнительный код на случай, если у фильтра уже есть по умолчанию выбранное значение при открытии дэшборда. Но тут работоспособность не проверяли.
// если по умолчанию у Фильтра есть выбранное значение, то берем его
var selectedValues = visApi().getSelectedValues(filterGuid);
if (selectedValues && selectedValues.length > 0) {
renderWidgetVideo(selectedValues[0][0]);
}
// Пример ссылки с ютубчика. Нужно обязательно использовать embed ссылку, иначе будет ругаться. Еще в случае с ютубом платформа должна работать по HTTPS, так как ютуб только по HTTPS работает.
// $("#"+ w.general.renderTo).html('<iframe width="' + widgetWidth + '" height="' + widgetHeight + '" src="https://www.youtube.com/embed/lBpmltgkVeo?autoplay=1&loop=1" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>');и |
Сортировка расчетного столбца
...
В начала кода и заменить индекс на свой. Ниже кейс для гистограммы с одним расчетным столбцом и скрытыми остальными на вкладке Дополнительно. В запросе два показателя и один атрибут в строках.
Блок кода |
---|
|
w.series[0].data = w.series[0].data.sort(function(a,b){
return a.y > b.y? -1: 1 ;
});
w.xAxis.categories = w.series[0].data.map(item => item.name)
Highcharts.chart({...
}); |