]> git.immae.eu Git - perso/Immae/Projets/Cryptomonnaies/BIP39.git/blobdiff - src/js/index.js
Network select populated automatically by js
[perso/Immae/Projets/Cryptomonnaies/BIP39.git] / src / js / index.js
index 0ce039a0ab05d27a3cc93f28fce5c784d70bbc04..9ea5bb56fcc613d2c63f0bf62410896c29cb11b2 100644 (file)
@@ -40,8 +40,9 @@
     DOM.indexToggle = $(".index-toggle");
     DOM.addressToggle = $(".address-toggle");
     DOM.privateKeyToggle = $(".private-key-toggle");
+    DOM.myceliumPath = $("#mycelium-path");
 
-    var derivationPath = DOM.bip44path.val();
+    var derivationPath = $(".tab-pane.active .path").val();
 
     function init() {
         // Events
         disableForms();
         hidePending();
         hideValidationError();
+        populateNetworkSelect();
     }
 
     // Event handlers
 
     function networkChanged(e) {
-        var n = e.target.value;
-        if (n == "bitcoin") {
-            network = Bitcoin.networks.bitcoin;
-            DOM.bip44coin.val(0);
-        }
-        else if (n == "bitcoin-testnet") {
-            network = Bitcoin.networks.testnet;
-            DOM.bip44coin.val(1);
-        }
-        else if (n == "litecoin") {
-            network = Bitcoin.networks.litecoin;
-            DOM.bip44coin.val(2);
-        }
-        else if (n == "dogecoin") {
-            network = Bitcoin.networks.dogecoin;
-            var UNOFFICIAL_BIP44_COIN = 9999;
-            DOM.bip44coin.val(UNOFFICIAL_BIP44_COIN); // This coin is not in BIP44
-        }
+        var network = e.target.value;
+        networks[network].onSelect();
         setBip44DerivationPath();
         delayedPhraseChanged();
     }
             .hide();
     }
 
+    function populateNetworkSelect() {
+        for (var i=0; i<networks.length; i++) {
+            var network = networks[i];
+            var option = $("<option>");
+            option.attr("value", i);
+            option.text(network.name);
+            DOM.phraseNetwork.append(option);
+        }
+    }
+
+    var networks = [
+        {
+            name: "Bitcoin",
+            onSelect: function() {
+                network = Bitcoin.networks.bitcoin;
+                DOM.bip44coin.val(0);
+                DOM.myceliumPath.val("m/44'/0'/0'/0");
+            },
+        },
+        {
+            name: "Bitcoin Testnet",
+            onSelect: function() {
+                network = Bitcoin.networks.testnet;
+                DOM.bip44coin.val(1);
+                DOM.myceliumPath.val("m/44'/1'/0'/0");
+            },
+        },
+        {
+            name: "Litecoin",
+            onSelect: function() {
+                network = Bitcoin.networks.litecoin;
+                DOM.bip44coin.val(2);
+            },
+        },
+        {
+            name: "Dogecoin",
+            onSelect: function() {
+                network = Bitcoin.networks.dogecoin;
+                DOM.bip44coin.val(3);
+            },
+        },
+    ]
+
     init();
 
 })();