From: Nicolas Braud-Santoni <nicolas@braud-santoni.eu>
Date: Sat, 4 Aug 2018 07:48:33 +0000 (+0800)
Subject: graphnion.*.draw: Passage à l'API basée sur les promesses
X-Git-Url: https://www.nos-oignons.net/gitweb/website.git/commitdiff_plain/refs/heads/d3?ds=sidebyside

graphnion.*.draw: Passage à l'API basée sur les promesses
---

diff --git a/assets/bw_graphs.js b/assets/bw_graphs.js
index 4198e1c..56c38a1 100644
--- a/assets/bw_graphs.js
+++ b/assets/bw_graphs.js
@@ -214,8 +214,9 @@ BwDrawer.draw_bandwidth_graph = function(raw_data, selector, period) {
 
 BwDrawer.prototype.draw = function() {
   var selector = this.selector;
-  d3.json(BwDrawer.onionoo_url, function(error, raw_data) {
-    d3.select(selector).text("");
-    BwDrawer.draw_bandwidth_graph(raw_data, selector);
+  d3.json(BwDrawer.onionoo_url)
+    .then(function(raw_data) {
+      d3.select(selector).text("");
+      BwDrawer.draw_bandwidth_graph(raw_data, selector);
   });
 };
diff --git a/assets/pie_graphs.js b/assets/pie_graphs.js
index 4fb9f51..5349961 100644
--- a/assets/pie_graphs.js
+++ b/assets/pie_graphs.js
@@ -37,33 +37,34 @@ PieDrawer.prototype.draw = function() {
       .text(L10n.loading);
 
   var field_getter = this.getField;
-  d3.json(PieDrawer.onionoo_url + "&fields=fingerprint," + this.getFieldName(), function(error, raw_data) {
-    var frac_nos_oignons = 0;
-    raw_data['relays'].forEach(function(d) {
-      nos_oignons_relays.forEach(function(r) {
-        if (r.fingerprint == d.fingerprint) {
-          var value = field_getter(d);
-          if (value) {
-            frac_nos_oignons += value;
+  d3.json(PieDrawer.onionoo_url + "&fields=fingerprint," + this.getFieldName())
+    .then(function(raw_data) {
+      var frac_nos_oignons = 0;
+      raw_data['relays'].forEach(function(d) {
+        nos_oignons_relays.forEach(function(r) {
+          if (r.fingerprint == d.fingerprint) {
+            var value = field_getter(d);
+            if (value) {
+              frac_nos_oignons += value;
+            }
           }
-        }
+        });
       });
-    });
-    var frac_others = 1 - frac_nos_oignons;
+      var frac_others = 1 - frac_nos_oignons;
 
-    data = [ { name: L10n.nos_oignons, frac: frac_nos_oignons, color: PieDrawer.color_nos_oignons, },
-             { name: L10n.others,      frac: frac_others,      color: PieDrawer.color_others }, ];
+      data = [ { name: L10n.nos_oignons, frac: frac_nos_oignons, color: PieDrawer.color_nos_oignons, },
+               { name: L10n.others,      frac: frac_others,      color: PieDrawer.color_others }, ];
 
-    text.text(PieDrawer.formatPercent(data[0].frac));
+      text.text(PieDrawer.formatPercent(data[0].frac));
 
-    var g = svg.selectAll(".arc")
-        .data(PieDrawer.pie(data))
-      .enter().append("g")
-        .attr("class", "arc");
+      var g = svg.selectAll(".arc")
+          .data(PieDrawer.pie(data))
+        .enter().append("g")
+          .attr("class", "arc");
 
-    g.append("path")
-        .attr("d", PieDrawer.arc)
-        .style("fill", function(d) { return d.data.color; });
+      g.append("path")
+          .attr("d", PieDrawer.arc)
+          .style("fill", function(d) { return d.data.color; });
 
   });
 }
diff --git a/assets/weights_graphs.js b/assets/weights_graphs.js
index 8116d01..5ed7cb1 100644
--- a/assets/weights_graphs.js
+++ b/assets/weights_graphs.js
@@ -238,7 +238,8 @@ WeightsDrawer.prototype.update_period = function(period) {
 
 WeightsDrawer.prototype.draw = function() {
   var drawer = this;
-  d3.json(WeightsDrawer.onionoo_url, function(error, raw_data) {
+  d3.json(WeightsDrawer.onionoo_url)
+    .then(function(raw_data) {
     d3.select(drawer.selector).text("");
     drawer.draw_weights_graph(raw_data);
   });