Merge pull request #56 from rstormsf/core
(Fix) Don't show addresses if tx from metamask was failed
This commit is contained in:
commit
abc291e150
27
src/App.js
27
src/App.js
|
@ -5,6 +5,15 @@ import Keys from './Keys';
|
|||
import swal from 'sweetalert';
|
||||
import './index/index.css';
|
||||
import ReactDOM from 'react-dom';
|
||||
import { error } from 'util';
|
||||
|
||||
function generateElement(msg){
|
||||
let errorNode = document.createElement("div");
|
||||
errorNode.innerHTML = `<div>
|
||||
${msg}
|
||||
</div>`;
|
||||
return errorNode;
|
||||
}
|
||||
|
||||
const Loading = () => (
|
||||
<div className="loading-container">
|
||||
|
@ -32,7 +41,8 @@ class App extends Component {
|
|||
getWeb3().then((web3Config) => {
|
||||
this.setState({web3Config})
|
||||
this.keysManager = new KeysManager({
|
||||
web3: web3Config.web3Instance
|
||||
web3: web3Config.web3Instance,
|
||||
netId: web3Config.netId
|
||||
});
|
||||
}).catch((error) => {
|
||||
if(error.msg){
|
||||
|
@ -52,7 +62,15 @@ class App extends Component {
|
|||
console.log(isValid);
|
||||
if(Number(isValid) !== 1){
|
||||
this.setState({loading:false});
|
||||
swal("Warning!", "The key is not valid initial Key! Please make sure you have loaded correct initial key in metamask", "warning");
|
||||
const invalidKeyMsg = `The key is not valid initial Key!<br/>
|
||||
Please make sure you have loaded correct initial key in metamask.<br/>
|
||||
Your current selected key is ${initialKey}`
|
||||
swal({
|
||||
icon: 'error',
|
||||
title: 'Error',
|
||||
content: generateElement(invalidKeyMsg)
|
||||
|
||||
})
|
||||
return;
|
||||
}
|
||||
if(Number(isValid) === 1){
|
||||
|
@ -77,10 +95,11 @@ class App extends Component {
|
|||
swal("Congratulations!", "Your keys are generated!", "success");
|
||||
}).catch((error) => {
|
||||
console.error(error.message);
|
||||
this.setState({loading: false})
|
||||
this.setState({loading: false, keysGenerated: false})
|
||||
var content = document.createElement("div");
|
||||
content.innerHTML = `<div>
|
||||
Something went wrong!<br/><br/>
|
||||
Something went wrong!<br/><br/>
|
||||
Please contact Master Of Ceremony<br/><br/>
|
||||
${error.message}
|
||||
</div>`;
|
||||
swal({
|
||||
|
|
|
@ -1,3 +1,18 @@
|
|||
module.exports = {
|
||||
KEYS_MANAGER_ADDRESS: '0xfc90125492e58dbfe80c0bfb6a2a759c4f703ca8'
|
||||
const CORE_ADDRESSES = {
|
||||
KEYS_MANAGER_ADDRESS: '0xfc90125492e58dbfe80c0bfb6a2a759c4f703ca8',
|
||||
}
|
||||
|
||||
const SOKOL_ADDRESSES = {
|
||||
KEYS_MANAGER_ADDRESS: '0x88a34124bfffa27ef3e052c8dd2908e212643771',
|
||||
}
|
||||
|
||||
module.exports = (netId) => {
|
||||
switch (netId){
|
||||
case '77':
|
||||
return SOKOL_ADDRESSES
|
||||
case '99':
|
||||
return CORE_ADDRESSES
|
||||
default:
|
||||
return CORE_ADDRESSES
|
||||
}
|
||||
}
|
|
@ -2,6 +2,13 @@ let errorMsgNoMetamaskAccount = `You haven't chosen any account in MetaMask.
|
|||
Please, choose your initial key in MetaMask and reload the page.
|
||||
Check POA Network <a href='https://github.com/poanetwork/wiki' target='blank'>wiki</a> for more info.`;
|
||||
|
||||
let netIdUrlMismatch = (netId) => {
|
||||
return `
|
||||
Your current URL is ${window.location.host},
|
||||
however your metamask netId is ${netId}
|
||||
Please select correct network in metamask
|
||||
`
|
||||
}
|
||||
|
||||
function generateElement(msg){
|
||||
let errorNode = document.createElement("div");
|
||||
|
@ -37,9 +44,13 @@ let getWeb3 = () => {
|
|||
netIdName = 'ERROR'
|
||||
errorMsg = `You aren't connected to POA Network.
|
||||
Please, switch on POA plugin and refresh the page.
|
||||
Check POA Network <a href='https://github.com/poanetwork/wiki' target='blank'>wiki</a> for more info.`
|
||||
Check POA Network <a href='https://github.com/poanetwork/wiki' target='blank'>wiki</a> for more info.
|
||||
Current Network Id: ${netId}`
|
||||
|
||||
console.log('This is an unknown network.', netId)
|
||||
}
|
||||
const networkUrl = window.location.host.indexOf('sokol') !== -1 ? "77" : "99";
|
||||
console.log('network', networkUrl)
|
||||
results = {
|
||||
web3Instance: web3,
|
||||
netIdName,
|
||||
|
@ -54,6 +65,9 @@ let getWeb3 = () => {
|
|||
if(errorMsg !== null){
|
||||
reject({msg: errorMsg, node: generateElement(errorMsg)})
|
||||
}
|
||||
if(networkUrl !== netId) {
|
||||
reject({msg: netIdUrlMismatch(netId), node: generateElement(netIdUrlMismatch(netId))})
|
||||
}
|
||||
resolve(results)
|
||||
})
|
||||
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
import KeysManagerAbi from './keysManagerAbi.json'
|
||||
import Web3 from 'web3';
|
||||
import addressGenerator from './addressGenerator';
|
||||
import {KEYS_MANAGER_ADDRESS} from './addresses'
|
||||
import networkAddresses from './addresses'
|
||||
|
||||
console.log('Keys Manager ', KEYS_MANAGER_ADDRESS)
|
||||
export default class KeysManager {
|
||||
constructor(){
|
||||
if(window.web3.currentProvider){
|
||||
let web3_10 = new Web3(window.web3.currentProvider);
|
||||
this.keysInstance = new web3_10.eth.Contract(KeysManagerAbi, KEYS_MANAGER_ADDRESS);
|
||||
}
|
||||
constructor({web3, netId}){
|
||||
let web3_10 = new Web3(web3.currentProvider);
|
||||
const {KEYS_MANAGER_ADDRESS} = networkAddresses(netId);
|
||||
console.log('Keys Manager ', KEYS_MANAGER_ADDRESS);
|
||||
this.web3_10 = web3_10;
|
||||
this.keysInstance = new web3_10.eth.Contract(KeysManagerAbi, KEYS_MANAGER_ADDRESS);
|
||||
}
|
||||
async isInitialKeyValid(initialKey) {
|
||||
return await this.keysInstance.methods.initialKeys(initialKey).call();
|
||||
|
@ -19,7 +19,8 @@ export default class KeysManager {
|
|||
return await addressGenerator();
|
||||
}
|
||||
createKeys({mining, voting, payout, sender}){
|
||||
return this.keysInstance.methods.createKeys(mining, voting, payout).send({from: sender})
|
||||
const gasPrice = this.web3_10.utils.toWei('2', 'gwei')
|
||||
return this.keysInstance.methods.createKeys(mining, voting, payout).send({from: sender, gasPrice})
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue