From 78af771c797a3a9d57970ef94be3c3e5ecf117c6 Mon Sep 17 00:00:00 2001 From: Dan Finlay Date: Tue, 27 Jun 2017 15:02:15 -0700 Subject: Do not allow adding non token addresses --- ui/app/add-token.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) (limited to 'ui/app') diff --git a/ui/app/add-token.js b/ui/app/add-token.js index b303b5c0d..f21184270 100644 --- a/ui/app/add-token.js +++ b/ui/app/add-token.js @@ -142,7 +142,13 @@ AddTokenScreen.prototype.render = function () { if (!valid) return const { address, symbol, decimals } = this.state - this.props.dispatch(actions.addToken(address.trim(), symbol.trim(), decimals)) + this.checkIfToken(address.trim()) + .then(() => { + this.props.dispatch(actions.addToken(address.trim(), symbol.trim(), decimals)) + }) + .catch((reason) => { + this.setState({ warning: 'Not a valid token address.' }) + }) }, }, 'Add'), ]), @@ -202,6 +208,12 @@ AddTokenScreen.prototype.validateInputs = function () { return isValid } +AddTokenScreen.prototype.checkIfToken = async function (address) { + const contract = this.TokenContract.at(address) + const result = await contract.balance(address) + return result[0].toString() +} + AddTokenScreen.prototype.attemptToAutoFillTokenParams = async function (address) { const contract = this.TokenContract.at(address) -- cgit