Created
February 27, 2018 15:08
-
-
Save adilmezghouti/4680355544a9b09f1ce4447b3207eb00 to your computer and use it in GitHub Desktop.
web3 example
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//Loading files dynamically | |
function loadjscssfile(filename, filetype){ | |
if (filetype=="js"){ //if filename is a external JavaScript file | |
var fileref=document.createElement('script') | |
fileref.setAttribute("type","text/javascript") | |
fileref.setAttribute("src", filename) | |
} | |
else if (filetype=="css"){ //if filename is an external CSS file | |
var fileref=document.createElement("link") | |
fileref.setAttribute("rel", "stylesheet") | |
fileref.setAttribute("type", "text/css") | |
fileref.setAttribute("href", filename) | |
} | |
if (typeof fileref!="undefined") | |
document.getElementsByTagName("head")[0].appendChild(fileref) | |
} | |
//loading the web3 library | |
loadjscssfile("http://localhost:8000/dist/web3.min.js", "js"); | |
//Creating an instance of web3 and connecting it to the blockchain node running locally | |
web3 = new Web3(new Web3.providers.HttpProvider("http://localhost:8585")); | |
var tokenContractABI = [ | |
{ | |
"constant": true, | |
"inputs": [], | |
"name": "name", | |
"outputs": [ | |
{ | |
"name": "", | |
"type": "string" | |
} | |
], | |
"payable": false, | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"constant": false, | |
"inputs": [ | |
{ | |
"name": "_spender", | |
"type": "address" | |
}, | |
{ | |
"name": "_value", | |
"type": "uint256" | |
} | |
], | |
"name": "approve", | |
"outputs": [ | |
{ | |
"name": "success", | |
"type": "bool" | |
} | |
], | |
"payable": false, | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"constant": true, | |
"inputs": [], | |
"name": "totalSupply", | |
"outputs": [ | |
{ | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"payable": false, | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"constant": false, | |
"inputs": [ | |
{ | |
"name": "_from", | |
"type": "address" | |
}, | |
{ | |
"name": "_to", | |
"type": "address" | |
}, | |
{ | |
"name": "_value", | |
"type": "uint256" | |
} | |
], | |
"name": "transferFrom", | |
"outputs": [ | |
{ | |
"name": "success", | |
"type": "bool" | |
} | |
], | |
"payable": false, | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"constant": true, | |
"inputs": [ | |
{ | |
"name": "", | |
"type": "address" | |
} | |
], | |
"name": "balances", | |
"outputs": [ | |
{ | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"payable": false, | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"constant": true, | |
"inputs": [], | |
"name": "decimals", | |
"outputs": [ | |
{ | |
"name": "", | |
"type": "uint8" | |
} | |
], | |
"payable": false, | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"constant": true, | |
"inputs": [ | |
{ | |
"name": "", | |
"type": "address" | |
}, | |
{ | |
"name": "", | |
"type": "address" | |
} | |
], | |
"name": "allowed", | |
"outputs": [ | |
{ | |
"name": "", | |
"type": "uint256" | |
} | |
], | |
"payable": false, | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"constant": true, | |
"inputs": [ | |
{ | |
"name": "_owner", | |
"type": "address" | |
} | |
], | |
"name": "balanceOf", | |
"outputs": [ | |
{ | |
"name": "balance", | |
"type": "uint256" | |
} | |
], | |
"payable": false, | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"constant": true, | |
"inputs": [], | |
"name": "symbol", | |
"outputs": [ | |
{ | |
"name": "", | |
"type": "string" | |
} | |
], | |
"payable": false, | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"constant": false, | |
"inputs": [ | |
{ | |
"name": "_to", | |
"type": "address" | |
}, | |
{ | |
"name": "_value", | |
"type": "uint256" | |
} | |
], | |
"name": "transfer", | |
"outputs": [ | |
{ | |
"name": "success", | |
"type": "bool" | |
} | |
], | |
"payable": false, | |
"stateMutability": "nonpayable", | |
"type": "function" | |
}, | |
{ | |
"constant": true, | |
"inputs": [ | |
{ | |
"name": "_owner", | |
"type": "address" | |
}, | |
{ | |
"name": "_spender", | |
"type": "address" | |
} | |
], | |
"name": "allowance", | |
"outputs": [ | |
{ | |
"name": "remaining", | |
"type": "uint256" | |
} | |
], | |
"payable": false, | |
"stateMutability": "view", | |
"type": "function" | |
}, | |
{ | |
"inputs": [], | |
"payable": false, | |
"stateMutability": "nonpayable", | |
"type": "constructor" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"name": "_from", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"name": "_to", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"name": "_value", | |
"type": "uint256" | |
} | |
], | |
"name": "Transfer", | |
"type": "event" | |
}, | |
{ | |
"anonymous": false, | |
"inputs": [ | |
{ | |
"indexed": true, | |
"name": "_owner", | |
"type": "address" | |
}, | |
{ | |
"indexed": true, | |
"name": "_spender", | |
"type": "address" | |
}, | |
{ | |
"indexed": false, | |
"name": "_value", | |
"type": "uint256" | |
} | |
], | |
"name": "Approval", | |
"type": "event" | |
} | |
]; | |
web3.eth.getAccounts(function(error, accounts) { | |
var tokenContractAddress = "0xD85B4d7b19b210257C2dAf8a91ffbF7ec79C25e4"; | |
var tokenContract = web3.eth.contract(tokenContractABI).at(tokenContractAddress) | |
var tokens = tokenContract.balanceOf(accounts[1]); | |
console.log(tokens.c[0]); | |
$('#order-summary').prepend('<div id="promoCodeContainer" class="module-section">\n' + | |
' <div id="summary-promo-header" style="margin-bottom: 10px;background-color: #f0f0f0;color: darkgreen;" class="module-header clearfix module-header-active">\n' + | |
' <h3 class="module-headline">Your balance is: ' + tokenContract.balanceOf(accounts[1]).c[0] + ' jays</h3>\n' + | |
' </div>\n' + | |
'</div>'); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment