diff --git a/src/app/tabs/run-tab.js b/src/app/tabs/run-tab.js index 63a494dbfc..d4866b1063 100644 --- a/src/app/tabs/run-tab.js +++ b/src/app/tabs/run-tab.js @@ -1,6 +1,7 @@ 'use strict' var $ = require('jquery') var yo = require('yo-yo') +var detectNetwork = require('../../lib/detect-network') var helper = require('../../lib/helper.js') var txExecution = require('../execution/txExecution') var txFormat = require('../execution/txFormat') @@ -165,6 +166,20 @@ var css = csjs` padding-left: 10px; display: inline; } + .network { + display: flex; + justify-content: flex-end; + align-items: center; + position: absolute; + color: grey; + width: 100%; + height: 100%; + padding-right: 20px; + pointer-events: none; + } + .networkItem { + margin-right: 5px; + } ` module.exports = runTab @@ -366,33 +381,47 @@ function contractDropdown (appAPI, appEvents, instanceContainer) { ------------------------------------------------ */ function settings (appAPI, appEvents) { // SETTINGS HTML + var net = yo`` + const updateNetwork = () => { + detectNetwork((err, { id, name } = {}) => { + if (err) console.error(err) + console.log(`update network[${id}] name: ${name}`) + net.innerHTML = ` + ${name}(${id || '-'}) + ` + }) + } + updateNetwork() var el = yo`
Environment
- +
+ ${net} + +
Account
diff --git a/src/lib/detect-network.js b/src/lib/detect-network.js new file mode 100644 index 0000000000..e9063dde7b --- /dev/null +++ b/src/lib/detect-network.js @@ -0,0 +1,19 @@ +var executionContext = require('../execution-context') +window.executionContext = executionContext +module.exports = detectNetwork + +function detectNetwork (callback) { + var web3provider = executionContext.web3() + var get = web3provider.version ? web3provider.version.getNetwork : web3provider.web3.version.getNetwork + get((err, id) => { + var name = null + if (err) name = 'Unknown' + else if (id === '1') name = 'Main' + else if (id === '2') name = 'Morden (deprecated)' + else if (id === '3') name = 'Ropsten' + else if (id === '4') name = 'Rinkeby' + else if (id === '42') name = 'Kovan' + else name = 'Unknown' + callback(err, { id, name }) + }) +}