aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/mist/assets/ext/ethereum.js/example
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/mist/assets/ext/ethereum.js/example')
-rw-r--r--cmd/mist/assets/ext/ethereum.js/example/balance.html4
-rw-r--r--cmd/mist/assets/ext/ethereum.js/example/contract.html1
-rw-r--r--cmd/mist/assets/ext/ethereum.js/example/contract_with_array.html76
-rw-r--r--cmd/mist/assets/ext/ethereum.js/example/event.html120
-rw-r--r--cmd/mist/assets/ext/ethereum.js/example/event_inc.html66
-rw-r--r--cmd/mist/assets/ext/ethereum.js/example/natspec_contract.html1
6 files changed, 268 insertions, 0 deletions
diff --git a/cmd/mist/assets/ext/ethereum.js/example/balance.html b/cmd/mist/assets/ext/ethereum.js/example/balance.html
index 4b51c5a7d..616d4eb6f 100644
--- a/cmd/mist/assets/ext/ethereum.js/example/balance.html
+++ b/cmd/mist/assets/ext/ethereum.js/example/balance.html
@@ -17,7 +17,11 @@
var originalBalance = web3.toDecimal(balance);
document.getElementById('original').innerText = 'original balance: ' + originalBalance + ' watching...';
+<<<<<<< HEAD:cmd/mist/assets/ext/ethereum.js/example/balance.html
var filter = web3.eth.watch({address: coinbase}).changed(function() {
+=======
+ web3.eth.watch('pending').changed(function() {
+>>>>>>> 859a1999cb204d2c6fcb08d6569c738c5af5cd86:example/balance.html
balance = web3.eth.balanceAt(coinbase)
var currentBalance = web3.toDecimal(balance);
document.getElementById("current").innerText = 'current: ' + currentBalance;
diff --git a/cmd/mist/assets/ext/ethereum.js/example/contract.html b/cmd/mist/assets/ext/ethereum.js/example/contract.html
index dccd1a64f..a534f68d8 100644
--- a/cmd/mist/assets/ext/ethereum.js/example/contract.html
+++ b/cmd/mist/assets/ext/ethereum.js/example/contract.html
@@ -20,6 +20,7 @@
// contract description, this will be autogenerated somehow
var desc = [{
"name": "multiply(uint256)",
+ "type": "function",
"inputs": [
{
"name": "a",
diff --git a/cmd/mist/assets/ext/ethereum.js/example/contract_with_array.html b/cmd/mist/assets/ext/ethereum.js/example/contract_with_array.html
new file mode 100644
index 000000000..a3dfc8a24
--- /dev/null
+++ b/cmd/mist/assets/ext/ethereum.js/example/contract_with_array.html
@@ -0,0 +1,76 @@
+<!doctype>
+<html>
+
+<head>
+<script type="text/javascript" src="js/bignumber.js/bignumber.min.js"></script>
+<script type="text/javascript" src="../dist/ethereum.js"></script>
+<script type="text/javascript">
+
+ var web3 = require('web3');
+ web3.setProvider(new web3.providers.HttpSyncProvider());
+
+ // solidity source code
+ var source = "" +
+ "contract test {\n" +
+ " function multiply(uint[] a) returns(uint d) {\n" +
+ " return a[0] + a[1];\n" +
+ " }\n" +
+ "}\n";
+
+ // contract description, this will be autogenerated somehow
+ var desc = [{
+ "name": "multiply(uint256[])",
+ "type": "function",
+ "inputs": [
+ {
+ "name": "a",
+ "type": "uint256[]"
+ }
+ ],
+ "outputs": [
+ {
+ "name": "d",
+ "type": "uint256"
+ }
+ ]
+ }];
+
+ var contract;
+
+ function createExampleContract() {
+ // hide create button
+ document.getElementById('create').style.visibility = 'hidden';
+ document.getElementById('source').innerText = source;
+
+ // create contract
+ var address = web3.eth.transact({code: web3.eth.solidity(source)});
+ contract = web3.eth.contract(address, desc);
+ document.getElementById('call').style.visibility = 'visible';
+ }
+
+ function callExampleContract() {
+ // this should be generated by ethereum
+ var param = parseInt(document.getElementById('value').value);
+ var param2 = parseInt(document.getElementById('value2').value);
+
+ // call the contract
+ var res = contract.call().multiply([param, param2]);
+ document.getElementById('result').innerText = res.toString(10);
+ }
+
+</script>
+</head>
+<body>
+ <h1>contract</h1>
+ <div id="source"></div>
+ <div id='create'>
+ <button type="button" onClick="createExampleContract();">create example contract</button>
+ </div>
+ <div id='call' style='visibility: hidden;'>
+ <input type="number" id="value" onkeyup='callExampleContract()'></input>
+ <input type="number" id="value2" onkeyup='callExampleContract()'></input>
+ </div>
+ <div id="result"></div>
+</body>
+</html>
+
diff --git a/cmd/mist/assets/ext/ethereum.js/example/event.html b/cmd/mist/assets/ext/ethereum.js/example/event.html
new file mode 100644
index 000000000..84d302437
--- /dev/null
+++ b/cmd/mist/assets/ext/ethereum.js/example/event.html
@@ -0,0 +1,120 @@
+<!doctype>
+<html>
+ <head>
+ <script type="text/javascript" src="js/bignumber.js/bignumber.min.js"></script>
+ <script type="text/javascript" src="../dist/ethereum.js"></script>
+ <script type="text/javascript">
+ var web3 = require('web3');
+ web3.setProvider(new web3.providers.HttpSyncProvider('http://localhost:8080'));
+
+ var desc = [{
+ "type":"event",
+ "inputs": [{"name":"a","type":"uint256","indexed":true},{"name":"b","type":"hash256","indexed":false}],
+ "name":"Event"
+ }, {
+ "type":"event",
+ "inputs": [{"name":"a","type":"uint256","indexed":true},{"name":"b","type":"hash256","indexed":false}],
+ "name":"Event2"
+ }, {
+ "type":"function",
+ "inputs": [{"name":"a","type":"uint256"}],
+ "name":"foo",
+ "outputs": []
+ }];
+
+ var address = '0x01';
+
+ var contract = web3.eth.contract(address, desc);
+
+ function test1() {
+ // "{"topic":["0x83c9849c","0xc4d76332"],"address":"0x01"}"
+ web3.eth.watch(contract).changed(function (res) {
+
+ });
+ };
+
+ function test2() {
+ // "{"topic":["0x83c9849c"],"address":"0x01"}"
+ web3.eth.watch(contract.Event).changed(function (res) {
+
+ });
+ };
+
+ function test3() {
+ // "{"topic":["0x83c9849c"],"address":"0x01"}"
+ contract.Event().changed(function (res) {
+
+ });
+ };
+
+ function test4() {
+ // "{"topic":["0x83c9849c","0000000000000000000000000000000000000000000000000000000000000045"],"address":"0x01"}"
+ contract.Event({a: 69}).changed(function (res) {
+
+ });
+ };
+
+ function test5() {
+ // "{"topic":["0x83c9849c",["0000000000000000000000000000000000000000000000000000000000000045","000000000000000000000000000000000000000000000000000000000000002a"]],"address":"0x01"}"
+ contract.Event({a: [69, 42]}).changed(function (res) {
+
+ });
+ };
+
+ function test6() {
+ // "{"topic":["0x83c9849c","000000000000000000000000000000000000000000000000000000000000001e"],"max":100,"address":"0x01"}"
+ contract.Event({a: 30}, {max: 100}).changed(function (res) {
+
+ });
+ };
+
+ function test7() {
+ // "{"topic":["0x83c9849c","000000000000000000000000000000000000000000000000000000000000001e"],"address":"0x01"}"
+ web3.eth.watch(contract.Event, {a: 30}).changed(function (res) {
+
+ });
+ };
+
+ function test8() {
+ // "{"topic":["0x83c9849c","000000000000000000000000000000000000000000000000000000000000001e"],"max":100,"address":"0x01"}"
+ web3.eth.watch(contract.Event, {a: 30}, {max: 100}).changed(function (res) {
+
+ });
+ };
+
+ // not valid
+ // function testX() {
+ // web3.eth.watch([contract.Event, contract.Event2]).changed(function (res) {
+ // });
+ // };
+
+ </script>
+ </head>
+
+ <body>
+ <div>
+ <button type="button" onClick="test1();">test1</button>
+ </div>
+ <div>
+ <button type="button" onClick="test2();">test2</button>
+ </div>
+ <div>
+ <button type="button" onClick="test3();">test3</button>
+ </div>
+ <div>
+ <button type="button" onClick="test4();">test4</button>
+ </div>
+ <div>
+ <button type="button" onClick="test5();">test5</button>
+ </div>
+ <div>
+ <button type="button" onClick="test6();">test6</button>
+ </div>
+ <div>
+ <button type="button" onClick="test7();">test7</button>
+ </div>
+ <div>
+ <button type="button" onClick="test8();">test8</button>
+ </div>
+ </body>
+</html>
diff --git a/cmd/mist/assets/ext/ethereum.js/example/event_inc.html b/cmd/mist/assets/ext/ethereum.js/example/event_inc.html
new file mode 100644
index 000000000..17df9d681
--- /dev/null
+++ b/cmd/mist/assets/ext/ethereum.js/example/event_inc.html
@@ -0,0 +1,66 @@
+<!doctype>
+<html>
+ <head>
+ <script type="text/javascript" src="js/bignumber.js/bignumber.min.js"></script>
+ <script type="text/javascript" src="../dist/ethereum.js"></script>
+ <script type="text/javascript">
+ var web3 = require('web3');
+ web3.setProvider(new web3.providers.HttpSyncProvider('http://localhost:8080'));
+
+ var source = "" +
+ "contract Contract { " +
+ " event Incremented(bool indexed odd, uint x); " +
+ " function Contract() { " +
+ " x = 69; " +
+ " } " +
+ " function inc() { " +
+ " ++x; " +
+ " Incremented(x % 2 == 1, x); " +
+ " } " +
+ " uint x; " +
+ "}";
+
+ var desc = [{
+ "type":"event",
+ "name":"Incremented",
+ "inputs": [{"name":"odd","type":"bool","indexed":true},{"name":"x","type":"uint","indexed":false}],
+ }, {
+ "type":"function",
+ "name":"inc",
+ "inputs": [],
+ "outputs": []
+ }];
+
+ var address;
+ var contract;
+
+ var update = function (x) {
+ document.getElementById('result').innerText = JSON.stringify(x);
+ };
+
+ var createContract = function () {
+ address = web3.eth.transact({code: web3.eth.solidity(source)});
+ contract = web3.eth.contract(address, desc);
+ contract.Incremented({odd: true}).changed(update);
+
+ };
+
+ var callContract = function () {
+ contract.call().inc();
+ };
+
+
+ </script>
+ </head>
+
+ <body>
+ <div>
+ <button type="button" onClick="createContract();">create contract</button>
+ </div>
+ <div>
+ <button type="button" onClick="callContract();">test1</button>
+ </div>
+ <div id="result">
+ </div>
+ </body>
+</html>
diff --git a/cmd/mist/assets/ext/ethereum.js/example/natspec_contract.html b/cmd/mist/assets/ext/ethereum.js/example/natspec_contract.html
index 40561a27c..212e582dc 100644
--- a/cmd/mist/assets/ext/ethereum.js/example/natspec_contract.html
+++ b/cmd/mist/assets/ext/ethereum.js/example/natspec_contract.html
@@ -21,6 +21,7 @@
// contract description, this will be autogenerated somehow
var desc = [{
"name": "multiply(uint256)",
+ "type": "function",
"inputs": [
{
"name": "a",