tx · Dq3yM1iJ9TYCWftAZCCw7yhh38B1iNB6DBK5smJiTXWs

3Mr6LNXTo2cMvNMrka9pV1pwHZFXVHULoue:  -0.01400000 Waves

2021.11.30 10:04 [1813456] smart account 3Mr6LNXTo2cMvNMrka9pV1pwHZFXVHULoue > SELF 0.00000000 Waves

{ "type": 13, "id": "Dq3yM1iJ9TYCWftAZCCw7yhh38B1iNB6DBK5smJiTXWs", "fee": 1400000, "feeAssetId": null, "timestamp": 1638255959776, "version": 2, "chainId": 84, "sender": "3Mr6LNXTo2cMvNMrka9pV1pwHZFXVHULoue", "senderPublicKey": "9tHFZ3PMkyXBYPkjU77RdMPEGBzfm7BWxfuHvGjgdrv5", "proofs": [ "4ejaf5YHntCc2M5qadFVhMtStJKLLrcDuTf82LMA542Nt4qEYDT9koZ3dCNWLgfR53WhT6dauxrspPAcVRD9CTzx" ], "script": "base64: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", "height": 1813456, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 41NK9egTzof6m5BsFvEVECqs9KRbPtrxZ4dziR3G18uA Next: 7yTcDBLfPYvyzFuLGZbQMRNTwKcFvbNTrBUvQvxhEVAY Diff:
OldNewDifferences
113113
114114
115115 @Callable(j)
116-func nftNoLongerForSale (r) = {
116+func cancelSelling (r) = {
117117 let s = i(c(r))
118118 let t = {
119119 let g = addressFromString(s)
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func a (b) = (b + "_price")
55
66
77 func c (b) = (b + "_owner")
88
99
1010 func d (e) = {
1111 let f = {
1212 let g = getInteger(this, e)
1313 if ($isInstanceOf(g, "Int"))
1414 then {
1515 let h = g
1616 h
1717 }
1818 else 0
1919 }
2020 f
2121 }
2222
2323
2424 func i (e) = {
2525 let f = {
2626 let g = getString(this, e)
2727 if ($isInstanceOf(g, "String"))
2828 then {
2929 let h = g
3030 h
3131 }
3232 else ""
3333 }
3434 f
3535 }
3636
3737
3838 @Callable(j)
3939 func offerForSale (k) = {
4040 let l = value(j.payments[0])
4141 let m = {
4242 let g = l.assetId
4343 if ($isInstanceOf(g, "ByteVector"))
4444 then {
4545 let n = g
4646 n
4747 }
4848 else if ($isInstanceOf(g, "Unit"))
4949 then {
5050 let o = g
5151 throw("Asset is not NFT")
5252 }
5353 else throw("Match error")
5454 }
5555 let p = toBase58String(m)
5656 let b = {
5757 let g = assetInfo(m)
5858 if ($isInstanceOf(g, "Asset"))
5959 then {
6060 let q = g
6161 q
6262 }
6363 else throw("Error getting information about asset")
6464 }
6565 if (if (if ((b.quantity != 1))
6666 then (b.decimals != 0)
6767 else false)
6868 then b.reissuable
6969 else false)
7070 then throw("Asset is not NFT")
7171 else [IntegerEntry(a(p), k), StringEntry(c(p), toBase58String(j.caller.bytes))]
7272 }
7373
7474
7575
7676 @Callable(j)
7777 func buy (r) = {
7878 let k = d(a(r))
7979 let s = i(c(r))
8080 let t = {
8181 let g = addressFromString(s)
8282 if ($isInstanceOf(g, "Address"))
8383 then {
8484 let q = g
8585 q
8686 }
8787 else throw("Address parsing error")
8888 }
8989 let l = value(j.payments[0])
9090 let u = {
9191 let g = l.assetId
9292 if ($isInstanceOf(g, "ByteVector"))
9393 then {
9494 let v = g
9595 true
9696 }
9797 else if ($isInstanceOf(g, "Unit"))
9898 then {
9999 let o = g
100100 false
101101 }
102102 else throw("Match error")
103103 }
104104 if ((k == 0))
105105 then throw("This NFT is not for sale")
106106 else if (u)
107107 then throw("Payment must be in Waves tokens only")
108108 else if ((k > l.amount))
109109 then throw("Insufficient funds")
110110 else [ScriptTransfer(j.caller, 1, fromBase58String(r)), ScriptTransfer(t, k, unit), DeleteEntry(a(r)), DeleteEntry(c(r))]
111111 }
112112
113113
114114
115115 @Callable(j)
116-func nftNoLongerForSale (r) = {
116+func cancelSelling (r) = {
117117 let s = i(c(r))
118118 let t = {
119119 let g = addressFromString(s)
120120 if ($isInstanceOf(g, "Address"))
121121 then {
122122 let q = g
123123 q
124124 }
125125 else throw("Address parsing error")
126126 }
127127 if ((s != toBase58String(j.caller.bytes)))
128128 then throw("The calling address is not the owner of the NFT token")
129129 else [ScriptTransfer(j.caller, 1, fromBase58String(r)), DeleteEntry(a(r)), DeleteEntry(c(r))]
130130 }
131131
132132
133133 @Verifier(w)
134134 func x () = sigVerify(w.bodyBytes, w.proofs[0], w.senderPublicKey)
135135

github/deemru/w8io/873ac7e 
27.37 ms