// Shortcuts for chart selection

This commit is contained in:
Damien Metzger
2013-10-22 14:07:19 +02:00
parent a7c7bc68a3
commit a4eeff4cd7
5 changed files with 64 additions and 42 deletions
+2 -2
View File
@@ -325,8 +325,8 @@ class Dashtrends extends Module
$data = array('chart_type' => 'line_chart_trends', 'data' => array());
foreach ($charts as $key => $title)
{
$data['data'][] = array('key' => $title, 'values' => $chart_data[$key], 'disabled' => ($key == 'sales' ? false : true));
$data['data'][] = array('key' => sprintf($this->l('%s (previous period)'), $title), 'values' => $chart_data_compare[$key], 'disabled' => ($key == 'sales' ? false : true));
$data['data'][] = array('id' => $key, 'key' => $title, 'values' => $chart_data[$key], 'disabled' => ($key == 'sales' ? false : true));
$data['data'][] = array('id' => $key.'_compare', 'key' => sprintf($this->l('%s (previous period)'), $title), 'values' => $chart_data_compare[$key], 'disabled' => ($key == 'sales' ? false : true));
}
return $data;
}
+25 -4
View File
@@ -1,3 +1,6 @@
var dashtrends_data;
var dashtrends_chart;
function line_chart_trends(widget_name, chart_details)
{
nv.addGraph(function() {
@@ -14,14 +17,32 @@ function line_chart_trends(widget_name, chart_details)
chart.yAxis
.tickFormat(d3.format(',.1%'));
dashtrends_data = chart_details.data;
dashtrends_chart = chart;
d3.select('#dash_trends_chart1 svg')
.datum(chart_details.data)
.call(chart);
//TODO: Figure out a good way to do this automatically
nv.utils.windowResize(chart.update);
return chart;
});
}
function selectDashtrendsChart(element, type)
{
$('#dashtrends_toolbar dl').removeClass('active');
$(element).addClass('active');
$.each(dashtrends_data, function(index, value) {
if (value.id == type || value.id == type + '_compare')
value.disabled = false;
else
value.disabled = true;
});
d3.select('#dash_trends_chart1 svg')
.datum(dashtrends_data)
.call(dashtrends_chart);
}
@@ -36,32 +36,32 @@
</span>
</header>
<div id="dashtrends_toolbar" class="row">
<dl class="col-xs-4 col-lg-2 active">
<dl class="col-xs-4 col-lg-2 active" onclick="selectDashtrendsChart(this, 'sales');">
<dt>{l s='Sales'}</dt>
<dd class="data_value size_l"><span id="sales_score"></span></dd>
<dd class="dash_trend"><span id="sales_score_trends"></span></dd>
</dl>
<dl class="col-xs-4 col-lg-2">
<dl class="col-xs-4 col-lg-2" onclick="selectDashtrendsChart(this, 'orders');">
<dt>{l s='Orders'}</dt>
<dd class="data_value size_l"><span id="orders_score"></span></dd>
<dd class="dash_trend"><span id="orders_score_trends"></span></dd>
</dl>
<dl class="col-xs-4 col-lg-2">
<dl class="col-xs-4 col-lg-2" onclick="selectDashtrendsChart(this, 'average_cart_value');">
<dt>{l s='Cart Value'}</dt>
<dd class="data_value size_l"><span id="cart_value_score"></span></dd>
<dd class="dash_trend"><span id="cart_value_score_trends"></span></dd>
</dl>
<dl class="col-xs-4 col-lg-2">
<dl class="col-xs-4 col-lg-2" onclick="selectDashtrendsChart(this, 'visits');">
<dt>{l s='Visits'}</dt>
<dd class="data_value size_l"><span id="visits_score"></span></dd>
<dd class="dash_trend"><span id="visits_score_trends"></span></dd>
</dl>
<dl class="col-xs-4 col-lg-2">
<dl class="col-xs-4 col-lg-2" onclick="selectDashtrendsChart(this, 'conversion_rate');">
<dt>{l s='Conversion Rate'}</dt>
<dd class="data_value size_l"><span id="conversion_rate_score"></span></dd>
<dd class="dash_trend"><span id="conversion_rate_score_trends"></span></dd>
</dl>
<dl class="col-xs-4 col-lg-2">
<dl class="col-xs-4 col-lg-2" onclick="selectDashtrendsChart(this, 'net_profits');">
<dt>{l s='Net Profits'}</dt>
<dd class="data_value size_l"><span id="net_profits_score"></span></dd>
<dd class="dash_trend"><span id="net_profits_score_trends"></span></dd>