--- a/cms/app-client/app/components/visu-langues.js Sun Oct 16 22:23:31 2016 +0530
+++ b/cms/app-client/app/components/visu-langues.js Sun Oct 16 23:19:57 2016 +0530
@@ -15,13 +15,14 @@
didInsertElement: function(){
var self = this;
- var baseurl = ENV.rootURL.replace(/\/$/,"")+'/api/v1';
+ var baseurl = (ENV.APP.backRootURL || ENV.rootURL).replace(/\/$/,"")+'/api/v1';
- d3.json(baseurl+"/stats/languages", function(languages) {
+ d3.json(baseurl+"/stats/languages", function(data) {
var margin = { top: 30, right: 0, bottom: 0, left: 0 };
var width = Ember.$('#' + self.get('elementId')).width();
var height = Ember.$('#' + self.get('elementId')).height() - margin.top - margin.bottom;
+ var languages = data['languages'];
var array = Object.keys(languages).map(function (key) { return languages[key]; });
var oldMin = Math.min(...array),
oldMax = Math.max(...array);
@@ -75,6 +76,8 @@
d._children = d.children;
if(d.children) {
d.value = d.children.reduce(function(p, v) { return p + accumulate(v); }, 0);
+ } else if (d.values) {
+ d.value = d.values.reduce(function(p, v) { return p + (languages[v] ? languages[v] : 0); }, 0);
} else {
d.value = languages[d.id] ? languages[d.id] : 0;
}
@@ -88,10 +91,14 @@
function getCount(node, count = 0) {
var c = languages[node.id];
if(typeof c === 'undefined') {
- node._children.forEach(function(child) {
- count = getCount(child, count);
- });
- return count;
+ if(node._children) {
+ node._children.forEach(function(child) {
+ count = getCount(child, count);
+ });
+ } else if(node.values) {
+ count = node.values.reduce(function(p, v) { return p + (languages[v] ? languages[v] : 0); }, count);
+ }
+ return count;
} else {
return count + c;
}