Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const getOfficialConverters = async (web3) => {
- let tokenAddress
- let tokenContract
- let symbol
- let converterCount
- let converterAddressLatest
- let converterContract
- let smartTokenAddress
- let smartTokenContract
- let smartTokenSymbol
- let obj
- const bancorRegistry = web3.eth.Contract(BancorConverterRegistryABI, BancorConverterRegistry)
- let totalTokens = await bancorRegistry.methods.tokenCount().call()
- totalTokens = web3.utils.hexToNumberString(totalTokens._hex)
- let tokenInfo = []
- let symbolArray = []
- for(let i =0; i<totalTokens; i++){
- try{
- tokenAddress = await bancorRegistry.methods.tokens(i).call()
- tokenContract = web3.eth.Contract(ABISmartToken, tokenAddress)
- // parse connector symbol
- try{
- symbol = await tokenContract.methods.symbol().call()
- }catch(err){
- // No Standard (return bytes32)
- tokenContract = web3.eth.Contract(ERC20noStandard, tokenAddress)
- symbol = web3.utils.toUtf8(await tokenContract.methods.symbol().call())
- }
- // parse latest converter
- converterCount = await bancorRegistry.methods.converterCount(tokenAddress).call()
- converterCount = web3.utils.hexToNumberString(converterCount._hex)
- converterAddressLatest = await bancorRegistry.methods.converterAddress(tokenAddress, converterCount - 1).call()
- // get smart token and smarttoken symbol
- converterContract = web3.eth.Contract(ABIConverter, converterAddressLatest )
- smartTokenAddress = await converterContract.methods.token().call()
- smartTokenContract = web3.eth.Contract(ABISmartToken, smartTokenAddress)
- // get real converter (smart token owner)
- converterAddress = await smartTokenContract.methods.owner().call()
- smartTokenSymbol = await smartTokenContract.methods.symbol().call()
- console.log(tokenAddress, symbol, converterAddress, smartTokenAddress, smartTokenSymbol)
- obj = { tokenAddress, symbol, converterAddress, smartTokenAddress, smartTokenSymbol}
- tokenInfo.push(obj)
- symbolArray.push(symbol)
- }catch(err){
- console.log("NO STANDARD_____", tokenAddress)
- }
- }
- saveToJson(tokenInfo)
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement