{# @copyright   Copyright (C) 2010-2024 Combodo SAS #}
{# @license     http://opensource.org/licenses/AGPL-3.0 #}

// Calculate height of graph : 200px (minimum height for the chart) + 20*iNbLinesToAddForName for the legend
var iChartDefaultHeight = 200,
        iChartLegendHeight = 20 * {{ oUIBlock.iNbLinesToAddForName }} ,
        iChartTotalHeight = (iChartDefaultHeight+iChartLegendHeight);
$('#my_chart_{{ oUIBlock.sId }}').height(iChartTotalHeight+'px');

var chart = c3.generate({
    bindto: d3.select('#my_chart_{{ oUIBlock.sId }}'),
    data: {
        columns: {{ oUIBlock.sJSColumns|raw }},
        type: 'pie',
        names: {{ oUIBlock.sJSNames|raw }},
        onclick: function (d) {
            var aURLs = {{ oUIBlock.sJSURLs|raw }};
            window.location.href = aURLs[d.index];
        },
        order: null
    },
    legend: {
        show: true,
        position: 'right'
    },
    tooltip: {
        format: {
            value: function (value) {
                return value;
            }
        }
    },
});

if (typeof (charts) === "undefined")
{
    charts = [];
    refreshChart = [];
}
var idxChart = charts.length;
charts.push(chart);
var refreshChart{{ oUIBlock.sId|sanitize(constant('utils::ENUM_SANITIZATION_FILTER_VARIABLE_NAME')) }}='	$.post("{{ oUIBlock.sURLForRefresh|escape('js')}}&refresh='+idxChart+'","", function (data) {'+
															'charts['+idxChart+'].unload();'+
															'setTimeout(function () {eval(data.js);},50);'+
														'});';

refreshChart.push(refreshChart{{ oUIBlock.sId|sanitize(constant('utils::ENUM_SANITIZATION_FILTER_VARIABLE_NAME')) }});