tx · 98xEygVdDd7CHddDa8veVdEDRFCeB8undf9q2CdDxV6w

3N4FTJ7dMaBKAU7nXnuSPwHgJjYW5ob2vHT:  -0.01000000 Waves

2020.03.21 02:51 [918353] smart account 3N4FTJ7dMaBKAU7nXnuSPwHgJjYW5ob2vHT > SELF 0.00000000 Waves

{ "type": 13, "id": "98xEygVdDd7CHddDa8veVdEDRFCeB8undf9q2CdDxV6w", "fee": 1000000, "feeAssetId": null, "timestamp": 1584748265027, "version": 1, "sender": "3N4FTJ7dMaBKAU7nXnuSPwHgJjYW5ob2vHT", "senderPublicKey": "8zGZXebVn4n6tHVqa71SRe1bqeeRdarL1SmEZRpDatCm", "proofs": [ "4LHtb5FjuwM8A33qUM4JvchELWQqPWV36oHkui92Lc6X4qtFzDW1r4xiXYi8AHyGoYL3FmerfEGBBLHt4SKoinVP" ], "script": "base64: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", "chainId": 84, "height": 918353, "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let NONE = "none"
5+
6+let OWNER = "BITNODES"
7+
8+let MULTOWNER = false
9+
10+func getNumberByKey (key) = {
11+ let num = match getInteger(this, key) {
12+ case a: Int =>
13+ a
14+ case _ =>
15+ 0
16+ }
17+ num
18+ }
19+
20+
21+func getStrByKey (key) = {
22+ let str = match getString(this, key) {
23+ case a: String =>
24+ a
25+ case _ =>
26+ NONE
27+ }
28+ str
29+ }
30+
31+
32+func addNodeDetails (addr,key) = {
33+ let str = match getString(addr, key) {
34+ case a: String =>
35+ a
36+ case _ =>
37+ NONE
38+ }
39+ str
40+ }
41+
42+
43+@Callable(i)
44+func addNode (node) = {
45+ let senderAddr = toBase58String(i.caller.bytes)
46+ let nodeSC = addressFromPublicKey(fromBase58String(node))
47+ let ownerID = addNodeDetails(nodeSC, "owner")
48+ let nodeAsset = addNodeDetails(nodeSC, "asset")
49+ if ((senderAddr != toString(this)))
50+ then throw("Operação não autorizada")
51+ else if ((ownerID == NONE))
52+ then throw("Propriedade não identificada")
53+ else if (if ((ownerID != OWNER))
54+ then (MULTOWNER == false)
55+ else false)
56+ then throw("Propriedade incorreta")
57+ else if ((nodeAsset == NONE))
58+ then throw("Inconsistencia de dados do node")
59+ else {
60+ let nodeDetails = addNodeDetails(nodeSC, "details")
61+ WriteSet([DataEntry(nodeAsset, node), DataEntry((node + "_nodeSC"), toString(nodeSC)), DataEntry((node + "_nodeDetails"), nodeDetails), DataEntry((node + "_nodeQuotas"), "CLOSED"), DataEntry((node + "_nodeStatus"), "DISABLED")])
62+ }
63+ }
64+
65+

github/deemru/w8io/169f3d6 
19.17 ms