From f5b56954860626c1a8668de0a90d942e1b32b592 Mon Sep 17 00:00:00 2001 From: robinknaapen Date: Wed, 4 Dec 2019 15:41:40 +0100 Subject: [PATCH] Handle zoomed event --- source/tmpl/service.gohtml | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/source/tmpl/service.gohtml b/source/tmpl/service.gohtml index b7198e7f..02ba771a 100644 --- a/source/tmpl/service.gohtml +++ b/source/tmpl/service.gohtml @@ -318,6 +318,21 @@ var heat_options = { } }; +async function zoomedEvent(chart, { xaxis, yaxis }) { + let start = Math.round(xaxis.min / 1000), + end = Math.round(xaxis.max / 1000); + + let chartData = await ChartLatency({{$s.Id}}, start, end); + if (!chartData) { + chartData = await ChartLatency({{$s.Id}}, start, end, "minute"); + } + + if(!chartData || !chartData.length) { + return false + } + + chart.updateSeries([{ data: chartData }]); +} async function RenderHeatmap() { let heatChart = new ApexCharts( @@ -335,8 +350,12 @@ async function RenderHeatmap() { } async function RenderChartLatency() { - options.fill.colors = {{if $s.Online}}["#48d338"]{{else}}["#dd3545"]{{end}}; - options.stroke.colors = {{if $s.Online}}["#3aa82d"]{{else}}["#c23342"]{{end}}; + options.chart.events = { + zoomed: zoomedEvent, + } + options.fill.colors = {{if $s.Online}}["#48d338"]{{else}}["#dd3545"]{{end}}; + options.stroke.colors = {{if $s.Online}}["#3aa82d"]{{else}}["#c23342"]{{end}}; + let chart = new ApexCharts(document.querySelector("#service"), options); await RenderChart(chart,{{$s.Id}},{{.StartUnix}},{{.EndUnix}},"hour"); }