cms/app-client/app/components/visu-langues.js
changeset 393 5ef3bfef0bff
parent 392 4fbe94af93e8
child 394 48458e099b05
--- a/cms/app-client/app/components/visu-langues.js	Fri Nov 04 19:03:25 2016 +0100
+++ b/cms/app-client/app/components/visu-langues.js	Sun Nov 06 03:44:16 2016 +0100
@@ -7,6 +7,7 @@
 
     constants: Ember.inject.service(),
     filter: Ember.inject.service(),
+    colors: Ember.inject.service(),
 
     filterObserver: Ember.observer('filter.language', function() {
         Ember.$('.node').removeClass("selected");
@@ -47,7 +48,6 @@
                 })
                 .round(false);
 
-                console.log('width', width, Ember.$('#' + self.get('elementId')).parent().width(), Ember.$('#' + self.get('elementId')).parent().parent().width(), Ember.$('#' + self.get('elementId')).parent().parent().parent().width());
             var element = d3.select('#' + self.get('elementId'))
                 .style("width", width + margin.left + margin.right + 'px')
                 .style("height", height + margin.bottom + margin.top + 'px')
@@ -122,14 +122,6 @@
                     .style("top", function(d) { return y(d.y) + 'px'; });
             }
 
-            function hexadecimalToInteger(hexadecimal) {
-                var integer = [];
-                for(var i = 1; i < 7; i += 2) {
-                    integer.push(parseInt(hexadecimal.slice(i, i + 2), 16));
-                }
-                return integer;
-            }
-
             function display(d) {
                 breadcrumbs
                     .datum(d.parent)
@@ -149,21 +141,9 @@
                 var dMin = Math.min.apply(null, d._children.map(function(d){ return d.count; }));
                 var dMax = Math.max.apply(null, d._children.map(function(d){ return d.count; }));
 
-                function shade(d) {
-                    var color = "#777777";
-                    var aColor = hexadecimalToInteger(color);
-                    var solidColor = "#333333";
-                    var aSolidColor = hexadecimalToInteger(solidColor);
-                    var aFillColor = [];
-                    for(var i = 0; i < 3; i++) {
-                        aFillColor.push((d.count - dMin) * (aSolidColor[i] - aColor[i]) / (dMax - dMin) + aColor[i]);
-                    }
-                    return '#' + (aFillColor.map(i => parseInt(i).toString(16))).join('');
-                }
-
                 node.attr("class", function(d) { return "node" + ( d.id === self.get('filter').get('language') ? " selected" : "" ); })
                     .call(position)
-                    .style("background-color", function(d) { return shade(d); })
+                    .style("background-color", function(d) { return self.get('colors').shadeLinear(d.count,dMin,dMax); })
                     .on("click", selectHandler);
 
                 node.filter(function(d) { return d._children; })