--- a/cms/app-client/app/components/visu-langues.js Fri Feb 19 21:18:12 2016 +0100
+++ b/cms/app-client/app/components/visu-langues.js Mon Feb 22 18:06:39 2016 +0100
@@ -1,7 +1,10 @@
import Ember from 'ember';
import d3 from 'd3';
+import ENV from 'app-client/config/environment';
+import _ from 'lodash/lodash';
export default Ember.Component.extend({
+ constants: Ember.inject.service(),
didInsertElement: function(){
var _this = this;
var margin = {top: 20, right: 0, bottom: 0, left: 0},
@@ -46,7 +49,11 @@
.attr("y", 6 - margin.top)
.attr("dy", ".75em");
- d3.json("langues.json", function(root) {
+ var baseurl = ENV.baseURL.replace(/\/$/,"")+'/api/v1';
+ d3.json(baseurl+"/languages", function(languages) {
+
+ var root = _.cloneDeep(_this.constants.LANGUAGES_TREEMAP);
+
initialize(root);
accumulate(root);
layout(root);
@@ -64,7 +71,7 @@
// We also take a snapshot of the original children (_children) to avoid
// the children being overwritten when when layout is computed.
function accumulate(d) {
- return (d._children = d.children) ? d.value = d.children.reduce(function(p, v) { return p + accumulate(v); }, 0) : d.value;
+ return (d._children = d.children) ? (d.value = d.children.reduce(function(p, v) { return p + accumulate(v); }, 0)) : (d.value = (languages[d.id]?languages[d.id]:0));
}
// Compute the treemap layout recursively such that each group of siblings
@@ -92,7 +99,7 @@
grandparent
.datum(d.parent)
.on("click", transition)
- .select("text")
+ .select("text")
.text(name(d));
var g1 = svg.insert("g", ".grandparent")
@@ -101,7 +108,7 @@
var g = g1.selectAll("g")
.data(d._children)
- .enter().append("g");
+ .enter().append("g");
g.classed("bla", true).on("click", selectHandler);