tx · 7AVsx83Usaz4EtCNwNrXbRN9DaBF6aEXJUtTTRkCagbX

3MrAr1PgXYYPi8hSBif9z4dHSDkUkaL8VHS:  -0.01400000 Waves

2021.08.17 18:18 [1662511] smart account 3MrAr1PgXYYPi8hSBif9z4dHSDkUkaL8VHS > SELF 0.00000000 Waves

{ "type": 13, "id": "7AVsx83Usaz4EtCNwNrXbRN9DaBF6aEXJUtTTRkCagbX", "fee": 1400000, "feeAssetId": null, "timestamp": 1629213512800, "version": 2, "chainId": 84, "sender": "3MrAr1PgXYYPi8hSBif9z4dHSDkUkaL8VHS", "senderPublicKey": "4Jye1zP9d4RPVyK435sPSyfLahkhcYHaP8GzMZcGTCuE", "proofs": [ "4tfyeLBAoj4aUZG7tzXn4wdpuy1uSq1dqpAvUpGUQixVLiNAigLRqAKLSnQL7QGJzQ4z6aguGFEz8kiMJz8DNrBv" ], "script": "base64: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", "height": 1662511, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Ht4VWuSAs8h3NaPi3hCsQY5mTzuRuYs22qjWXgNhxMyf Next: 393FJkFUXJipFJhhBoDz5R1b8nGbkBieQkmmvpxdyaRe Diff:
OldNewDifferences
4949 }
5050
5151
52+
53+@Callable(i)
54+func changeOwner (newOwner) = {
55+ let oldOwner = i.caller
56+ if (!(isOwner(oldOwner)))
57+ then throw("Caller is not owner")
58+ else ownerSet(oldOwner, Address(newOwner))
59+ }
60+
61+
5262 @Verifier(tx)
5363 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
5464
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let GlobalStore = "global"
55
66 let EventStore = "event"
77
88 func OwnerSetCurrentIndex (store) = (EventStore + "_ownerSet_current")
99
1010
1111 func OwnerSetByIndex (store,index) = (((store + "ownerSet[") + toString(index)) + "]")
1212
1313
1414 func TransactionId (store) = (store + "_tx")
1515
1616
1717 func OldOwner (store) = (store + "_oldOwner")
1818
1919
2020 func NewOwner (store) = (store + "_newOwner")
2121
2222
2323 func Owner (store) = (store + "_owner")
2424
2525
2626 func ownerSet (oldOwner,newOwner) = {
2727 let index = match getInteger(OwnerSetCurrentIndex(EventStore)) {
2828 case i: Int =>
2929 (i + 1)
3030 case _ =>
3131 0
3232 }
3333 [BinaryEntry(Owner(GlobalStore), newOwner.bytes), IntegerEntry(OwnerSetCurrentIndex(EventStore), index), BinaryEntry(OldOwner(OwnerSetByIndex(EventStore, index)), newOwner.bytes), BinaryEntry(NewOwner(OwnerSetByIndex(EventStore, index)), newOwner.bytes)]
3434 }
3535
3636
3737 func isOwner (caller) = match getBinary(Owner(GlobalStore)) {
3838 case v: ByteVector =>
3939 (v == caller.bytes)
4040 case _ =>
4141 false
4242 }
4343
4444
4545 @Callable(i)
4646 func init () = {
4747 let owner = i.caller
4848 ownerSet(unit, i.caller)
4949 }
5050
5151
52+
53+@Callable(i)
54+func changeOwner (newOwner) = {
55+ let oldOwner = i.caller
56+ if (!(isOwner(oldOwner)))
57+ then throw("Caller is not owner")
58+ else ownerSet(oldOwner, Address(newOwner))
59+ }
60+
61+
5262 @Verifier(tx)
5363 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
5464

github/deemru/w8io/169f3d6 
115.63 ms