-
Notifications
You must be signed in to change notification settings - Fork 0
/
contratodos.js
80 lines (72 loc) · 12.5 KB
/
contratodos.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
Web3 = require('web3')
web3 = new Web3(new Web3.providers.HttpProvider("http://ritaportal.udistrital.edu.co:10141"));
var account=web3.eth.coinbase;
var password="password";
web3.personal.unlockAccount(account, password,function(error, result) {
// console.log(error,result)
if(error){
console.log(error);
} else {
// Result = True if unlocked, else false
var str = account+'...Unlocked';
if(result){
var documentsContract = web3.eth.contract([{"constant":true,"inputs":[],"name":"countDocuments","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"","type":"uint256"}],"name":"documentAccts","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"_address","type":"string"}],"name":"getDocument","outputs":[{"name":"","type":"string"},{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"name":"x","type":"bytes32"}],"name":"bytes32ToString","outputs":[{"name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"name":"doc","type":"bytes32[]"}],"name":"setDocument","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"getDocuments","outputs":[{"name":"","type":"string[]"}],"payable":false,"stateMutability":"view","type":"function"}]);
var documents = documentsContract.new(
{
from: web3.eth.accounts[0],
data: '0x6060604052341561000f57600080fd5b610f298061001e6000396000f300606060405260043610610078576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063206302ef1461007d5780634b81092f146100a65780637ccb6a64146100dc5780639201de551461011357806395ae12a214610149578063ef2d87001461016b575b600080fd5b341561008857600080fd5b610090610194565b60405161009d9190610da7565b60405180910390f35b34156100b157600080fd5b6100c660046100c1903690610bf8565b6101a1565b6040516100d39190610d2c565b60405180910390f35b34156100e757600080fd5b6100fc60046100f7903690610bb7565b61025d565b60405161010a929190610d70565b60405180910390f35b341561011e57600080fd5b610133600461012e903690610b8e565b61048a565b6040516101409190610d4e565b60405180910390f35b341561015457600080fd5b6101696004610164903690610b4d565b610677565b005b341561017657600080fd5b61017e6107d9565b60405161018b9190610d0a565b60405180910390f35b6000600180549050905090565b6001818154811015156101b057fe5b90600052602060002090016000915090508054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156102555780601f1061022a57610100808354040283529160200191610255565b820191906000526020600020905b81548152906001019060200180831161023857829003601f168201915b505050505081565b6102656108c9565b61026d6108c9565b6000836040518082805190602001908083835b6020831015156102a55780518252602082019150602081019050602083039250610280565b6001836020036101000a03801982511681845116808217855250505050505090500191505090815260200160405180910390206001016000846040518082805190602001908083835b60208310151561031357805182526020820191506020810190506020830392506102ee565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020600001818054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156103de5780601f106103b3576101008083540402835291602001916103de565b820191906000526020600020905b8154815290600101906020018083116103c157829003601f168201915b50505050509150808054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561047a5780601f1061044f5761010080835404028352916020019161047a565b820191906000526020600020905b81548152906001019060200180831161045d57829003601f168201915b5050505050905091509150915091565b6104926108c9565b61049a6108dd565b60008060006104a76108dd565b60206040518059106104b65750595b9080825280601f01601f1916602001820160405250945060009350600092505b6020831015610594578260080260020a876001900402600102915060007f010000000000000000000000000000000000000000000000000000000000000002827effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161415156105875781858581518110151561054e57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535083806001019450505b82806001019350506104d6565b836040518059106105a25750595b9080825280601f01601f19166020018201604052509050600092505b8383101561066a5784838151811015156105d457fe5b9060200101517f010000000000000000000000000000000000000000000000000000000000000090047f010000000000000000000000000000000000000000000000000000000000000002818481518110151561062d57fe5b9060200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535082806001019350506105be565b8095505050505050919050565b60008061069b83600081518110151561068c57fe5b9060200190602002015161048a565b6040518082805190602001908083835b6020831015156106d057805182526020820191506020810190506020830392506106ab565b6001836020036101000a0380198251168184511680821785525050505050509050019150509081526020016040518091039020905061072682600081518110151561071757fe5b9060200190602002015161048a565b81600001908051906020019061073d9291906108f1565b5061075f82600181518110151561075057fe5b9060200190602002015161048a565b8160010190805190602001906107769291906108f1565b50600180805480600101828161078c9190610971565b916000526020600020900160006107ba8660018151811015156107ab57fe5b9060200190602002015161048a565b909190915090805190602001906107d29291906108f1565b5050505050565b6107e161099d565b6001805480602002602001604051908101604052809291908181526020016000905b828210156108c057838290600052602060002090018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156108ac5780601f10610881576101008083540402835291602001916108ac565b820191906000526020600020905b81548152906001019060200180831161088f57829003601f168201915b505050505081526020019060010190610803565b50505050905090565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061093257805160ff1916838001178555610960565b82800160010185558215610960579182015b8281111561095f578251825591602001919060010190610944565b5b50905061096d91906109b1565b5090565b8154818355818115116109985781836000526020600020918201910161099791906109d6565b5b505050565b602060405190810160405280600081525090565b6109d391905b808211156109cf5760008160009055506001016109b7565b5090565b90565b6109ff91905b808211156109fb57600081816109f29190610a02565b506001016109dc565b5090565b90565b50805460018160011615610100020316600290046000825580601f10610a285750610a47565b601f016020900490600052602060002090810190610a4691906109b1565b5b50565b600082601f8301121515610a5d57600080fd5b8135610a70610a6b82610def565b610dc2565b91508181835260208401935060208101905083856020840282011115610a9557600080fd5b60005b83811015610ac55781610aab8882610acf565b845260208401935060208301925050600181019050610a98565b5050505092915050565b6000610adb8235610e88565b905092915050565b600082601f8301121515610af657600080fd5b8135610b09610b0482610e17565b610dc2565b91508082526020830160208301858383011115610b2557600080fd5b610b30838284610e9c565b50505092915050565b6000610b458235610e92565b905092915050565b600060208284031215610b5f57600080fd5b600082013567ffffffffffffffff811115610b7957600080fd5b610b8584828501610a4a565b91505092915050565b600060208284031215610ba057600080fd5b6000610bae84828501610acf565b91505092915050565b600060208284031215610bc957600080fd5b600082013567ffffffffffffffff811115610be357600080fd5b610bef84828501610ae3565b91505092915050565b600060208284031215610c0a57600080fd5b6000610c1884828501610b39565b91505092915050565b6000610c2c82610e50565b80845260208401935083602082028501610c4585610e43565b60005b84811015610c7e578383038852610c60838351610cc5565b9250610c6b82610e71565b9150602088019750600181019050610c48565b508196508694505050505092915050565b6000610c9a82610e66565b808452610cae816020860160208601610eab565b610cb781610ede565b602085010191505092915050565b6000610cd082610e5b565b808452610ce4816020860160208601610eab565b610ced81610ede565b602085010191505092915050565b610d0481610e7e565b82525050565b60006020820190508181036000830152610d248184610c21565b905092915050565b60006020820190508181036000830152610d468184610cc5565b905092915050565b60006020820190508181036000830152610d688184610c8f565b905092915050565b60006040820190508181036000830152610d8a8185610c8f565b90508181036020830152610d9e8184610c8f565b90509392505050565b6000602082019050610dbc6000830184610cfb565b92915050565b6000604051905081810181811067ffffffffffffffff82111715610de557600080fd5b8060405250919050565b600067ffffffffffffffff821115610e0657600080fd5b602082029050602081019050919050565b600067ffffffffffffffff821115610e2e57600080fd5b601f19601f8301169050602081019050919050565b6000602082019050919050565b600081519050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b6000819050919050565b6000819050919050565b6000819050919050565b82818337600083830152505050565b60005b83811015610ec9578082015181840152602081019050610eae565b83811115610ed8576000848401525b50505050565b6000601f19601f83011690509190505600a265627a7a723058207cd63e64241dd195ef2e6721de87389e7d202312e8903169042c072586f79d656c6578706572696d656e74616cf50037',
gas: '4700000'
}, function (e, contract){
console.log(e, contract);
if (typeof contract.address !== 'undefined') {
console.log('Contract mined! address: ' + contract.address + ' transactionHash: ' + contract.transactionHash);
}
})
/// desbloquear cuenta
//
} else {
// This does not get called - since and error is returned for incorrect password :-)
str = 'Incorrect Password???';
console.log(str);
}
}
});
'use strict';
/**
* @ngdoc service
* @name etherAppApp.web3service
* @description
* # web3service
* Service in the etherAppApp.
*/
angular.module('etherAppApp')
.service('web3service', function ($http) {
// AngularJS will instantiate a singleton by calling "new" on this function
var Web3 = require('web3')
var web3 = new Web3(new Web3.providers.HttpProvider("http://ritaportal.udistrital.edu.co:10141"));
var contract_abidefinition ='[{"constant": true,"inputs": [],"name": "countDocuments","outputs": [{"name": "","type": "uint256"}],"payable": false,"stateMutability": "view","type": "function"},{"constant": true,"inputs": [{"name": "","type": "uint256"}],"name": "documentAccts","outputs": [{"name": "","type": "string"}],"payable": false,"stateMutability": "view","type": "function"},{"constant": true,"inputs": [{"name": "_address","type": "string"}],"name": "getDocument","outputs": [{"name": "","type": "string"},{"name": "","type": "string"}],"payable": false,"stateMutability": "view","type": "function"},{"constant": false,"inputs": [{"name": "nom","type": "string"},{"name": "cod","type": "string"}],"name": "setDocument","outputs": [],"payable": false,"stateMutability": "nonpayable","type": "function"},{"constant": true,"inputs": [],"name": "getDocuments","outputs": [{"name": "","type": "string[]"}],"payable": false,"stateMutability": "view","type": "function"}]';
var abiDefinition= JSON.parse(contract_abidefinition);
var contract = web3.eth.contract(abiDefinition);
var instance = contract.at("0xb84029f467dbe23dc471421c49c18d3a49d0e001");
console.log(instance);
var account=web3.eth.coinbase;
var password="password"
web3.personal.unlockAccount(account,password);
return {
get_doc: function(doc) {
var docs=instance.getDocuments.call();
return docs;
},
set_doc: function(doc){
var txnObject = {
from: web3.eth.coinbase,
gas: 91000
}
instance.setDocument.sendTransaction(doc[0],doc[1],txnObject);
return "ok";
},
count: function () {
return instance.countDocuments.call();
}
}
});