tx · C2FfgmYiUbh4pdXCLCWekWp17f1sqavyJEJ9vancwkux 3NBYuiC6eFv2jT8DptUfiMDTbhXgFvn7NcK: -0.04000000 Waves 2020.10.29 00:51 [1241044] smart account 3NBYuiC6eFv2jT8DptUfiMDTbhXgFvn7NcK > SELF 0.00000000 Waves
{ "type": 13, "id": "C2FfgmYiUbh4pdXCLCWekWp17f1sqavyJEJ9vancwkux", "fee": 4000000, "feeAssetId": null, "timestamp": 1603921896282, "version": 2, "chainId": 84, "sender": "3NBYuiC6eFv2jT8DptUfiMDTbhXgFvn7NcK", "senderPublicKey": "BN5UNNa95ZrPJ8JGf9eweh6CLRZ618MuRsvqmxPX1yTR", "proofs": [ "5XrzZ3Y94hy6Mftt3n8myoNBS88huXfwzXbqPyP6mKR13MGbJpRxWGWxfmG3MAFaLyoShzzr3MdNsCo4oS2PgF4H" ], "script": "base64:AAIEAAAAAAAAAAcIAhIDCgEIAAAAAgEAAAAHaXNPd25lcgAAAAEAAAAHYWRkcmVzcwkAAAAAAAACBQAAAAdhZGRyZXNzBQAAAAR0aGlzAQAAAA5nZXRTdHJpbmdCeUtleQAAAAEAAAADa2V5CQEAAAALdmFsdWVPckVsc2UAAAACCQAEHQAAAAIFAAAABHRoaXMFAAAAA2tleQIAAAAAAAAAAQAAAAFpAQAAAAlhZGRBbnN3ZXIAAAABAAAABkFuc3dlcgQAAAANZ2V0SGFzaEFuc3dlcgkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQIAAAALaGFzaC1hbnN3ZXIDCQEAAAABIQAAAAEJAQAAAAdpc093bmVyAAAAAQgFAAAAAWkAAAAGY2FsbGVyCQAAAgAAAAECAAAAIWFjY2VzcyBvbmx5IGJ5IHRoZSBjb250cmFjdCBvd25lcgQAAAAKaGFzaEFuc3dlcgUAAAAGQW5zd2VyBAAAAAZyZXdhcmQJAQAAAAV2YWx1ZQAAAAEJAAGRAAAAAggFAAAAAWkAAAAIcGF5bWVudHMAAAAAAAAAAAAJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAALaGFzaC1hbnN3ZXIFAAAACmhhc2hBbnN3ZXIJAARMAAAAAgkBAAAAC1N0cmluZ0VudHJ5AAAAAgIAAAAJYW5zd2VyX2lkCQACWAAAAAEIBQAAAAFpAAAADXRyYW5zYWN0aW9uSWQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIFAAAACmhhc2hBbnN3ZXICAAAAAV8JAAJYAAAAAQgFAAAAAWkAAAANdHJhbnNhY3Rpb25JZAIAAAAHX3Jld2FyZAgFAAAABnJld2FyZAAAAAZhbW91bnQJAARMAAAAAgkBAAAADEludGVnZXJFbnRyeQAAAAICAAAADmNyZWF0ZWRfaGVpZ2h0BQAAAAZoZWlnaHQFAAAAA25pbAAAAAD/sQhD", "height": 1241044, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: CvUE4n437vNpz8WGot6YeWfEMNqVvuJ8HEb4tWYdL788 Next: 5GNbT7h3gaPBinWFckTNM8GBEBdALCBHcRhpPg6hYtpG Full:
Old | New | Differences | |
---|---|---|---|
1 | - | {-# STDLIB_VERSION | |
1 | + | {-# STDLIB_VERSION 4 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | func isOwner (address) = (address == this) | |
5 | 5 | ||
6 | 6 | ||
7 | - | func getHashAnswer () = { | |
8 | - | let val = match getString(this, "hash-answer") { | |
9 | - | case b: String => | |
10 | - | b | |
11 | - | case _ => | |
12 | - | "" | |
13 | - | } | |
14 | - | val | |
15 | - | } | |
7 | + | func getStringByKey (key) = valueOrElse(getString(this, key), "") | |
16 | 8 | ||
17 | 9 | ||
18 | 10 | @Callable(i) | |
19 | - | func addAnswer (Answer) = if (!(isOwner(i.caller))) | |
20 | - | then throw("access only by the contract owner") | |
21 | - | else { | |
22 | - | let hashAnswer = Answer | |
23 | - | let reward = extract(i.payment).amount | |
24 | - | WriteSet([DataEntry("hash-answer", hashAnswer), DataEntry("answer_id", toBase58String(i.transactionId)), DataEntry((hashAnswer + "_reward"), reward), DataEntry("status", 0)]) | |
25 | - | } | |
11 | + | func addAnswer (Answer) = { | |
12 | + | let getHashAnswer = getStringByKey("hash-answer") | |
13 | + | if (!(isOwner(i.caller))) | |
14 | + | then throw("access only by the contract owner") | |
15 | + | else { | |
16 | + | let hashAnswer = Answer | |
17 | + | let reward = value(i.payments[0]) | |
18 | + | [StringEntry("hash-answer", hashAnswer), StringEntry("answer_id", toBase58String(i.transactionId)), IntegerEntry((((hashAnswer + "_") + toBase58String(i.transactionId)) + "_reward"), reward.amount), IntegerEntry("created_height", height)] | |
19 | + | } | |
20 | + | } | |
26 | 21 | ||
27 | 22 |
github/deemru/w8io/873ac7e 39.93 ms ◑