tx · GYrvjGQfZqpixX2JCmDbaVp9UhGo95otsZsbbvgLHLTS

3N9cKCHp6ZLMgz7rRgF8Q8DEt8zbtd1Ht7F:  -0.01000000 Waves

2023.01.25 09:56 [2420172] smart account 3N9cKCHp6ZLMgz7rRgF8Q8DEt8zbtd1Ht7F > SELF 0.00000000 Waves

{ "type": 13, "id": "GYrvjGQfZqpixX2JCmDbaVp9UhGo95otsZsbbvgLHLTS", "fee": 1000000, "feeAssetId": null, "timestamp": 1674629980446, "version": 2, "chainId": 84, "sender": "3N9cKCHp6ZLMgz7rRgF8Q8DEt8zbtd1Ht7F", "senderPublicKey": "3V22YUj3GF4AeBxdWx8rgGdG4groE4W6P2s4sAkshe7R", "proofs": [ "mc5TUUXKN9SpLprWhCBK6T34x4uzKYNXvfBe4Fqq26TFu1VNZWRyGtx6JE4NHQLhav3dCKHCr31JXM59gtVssSY" ], "script": "base64:BgIICAISBAoCCAgLAAlzZXBhcmF0b3ICAV8ABGtCdXkCA2J1eQAGa1ByaWNlAgVwcmljZQAFa1NlbGwCBHNlbGwABXRlYW1zASCFY5Wj84iOsN4MF44ITr+aP5K7Jts66HaOFtwUIipIfgAFV0FWRVMBAAASbWF4QXVjdGlvbkR1cmF0aW9uAAcABGtCaWQCA2JpZAAMc3RhdHVzRm9yTkZUCQCWCgQCBE9QRU4CBkNMT1NFRAIIUkVXQVJERUQCCENBTkNFTEVEAAtkQXBwQWRkcmVzcwEaAVRKuE9s3sLak+30julKNvjVT3+V1VVbXaABBWlzTmZ0AQdhc3NldElkBAckbWF0Y2gwCQDsBwEFB2Fzc2V0SWQDCQABAgUHJG1hdGNoMAIFQXNzZXQEBXRva2VuBQckbWF0Y2gwAwMJAAACCAUFdG9rZW4IZGVjaW1hbHMAAAkAAAIIBQV0b2tlbghxdWFudGl0eQABBwkAAAIIBQV0b2tlbgpyZWlzc3VhYmxlBwcHAQFpARJtYW51YWxGdW5kVHJhbnNmZXICDXJlY2VwaWVudEFkZHIHbWVzc2FnZQQGY2FsbGVyCAgFAWkGY2FsbGVyBWJ5dGVzBAdyZWNpdmVyCQDZBAEFDXJlY2VwaWVudEFkZHIEBmFtb3VudAgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQDCQAAAgkApAMBBQZhbW91bnQCBXRlYW1zCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIJANgEAQUGY2FsbGVyAglfdHJhbnNmZXIFBmFtb3VudAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJANgEAQUGY2FsbGVyAgxfdHJhbnNmZXJfdG8FDXJlY2VwaWVudEFkZHIJAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwkBB0FkZHJlc3MBBQdyZWNpdmVyBQZhbW91bnQFBXRlYW1zBQNuaWwJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkA2AQBBQZjYWxsZXICCV90cmFuc2ZlcgUGYW1vdW50CQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkA2AQBBQZjYWxsZXICDF90cmFuc2Zlcl90bwUNcmVjZXBpZW50QWRkcgkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEFB3JlY2l2ZXIFBmFtb3VudAUEdW5pdAUDbmlsAIut3UY=", "height": 2420172, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 5LZ628D5Q1iVZMxSuanRhn4KKL3M4E5mPWTqf84KekUp Next: UgDYv1qGa33swxK71FZzA6RAQkk9uhKxBgtXJ9spew4 Diff:
OldNewDifferences
99
1010 let d = "sell"
1111
12-let e = 7
12+let e = base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq'
1313
14-let f = base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq'
14+let f = base58''
1515
16-let g = base58''
16+let g = 7
1717
1818 let h = "bid"
1919
3737
3838
3939 @Callable(o)
40-func createNft (p,q,r,s,t,u,v,w,x) = {
41- let y = Issue(p, v, 1, 0, false)
42- let z = calculateAssetId(y)
43- let A = o.transactionId
44-[y, ScriptTransfer(o.caller, 1, z), StringEntry(((toBase58String(z) + a) + "Owner"), toString(o.caller)), StringEntry(((toBase58String(z) + a) + "nft_type"), s), StringEntry(((toBase58String(z) + a) + "nft_tags"), t), StringEntry(((toBase58String(z) + a) + "nft_dAppAddress"), r), IntegerEntry(((toBase58String(z) + a) + "nft_selling_price"), u), StringEntry(((toBase58String(z) + a) + "nft_onSell"), w), StringEntry(((toBase58String(z) + a) + "nft_data"), x), StringEntry(((toBase58String(A) + a) + "issue_nft"), toBase58String(z))]
40+func manualFundTransfer (p,q) = {
41+ let r = o.caller.bytes
42+ let s = fromBase58String(p)
43+ let t = o.payments[0].amount
44+ if ((toString(t) == "teams"))
45+ then [IntegerEntry((toBase58String(r) + "_transfer"), t), StringEntry((toBase58String(r) + "_transfer_to"), p), ScriptTransfer(Address(s), t, e)]
46+ else [IntegerEntry((toBase58String(r) + "_transfer"), t), StringEntry((toBase58String(r) + "_transfer_to"), p), ScriptTransfer(Address(s), t, unit)]
4547 }
46-
47-
48-
49-@Callable(o)
50-func sellNFT (B) = {
51- let A = o.transactionId
52- let C = o.caller.bytes
53- let D = $Tuple2(value(o.payments[0].assetId), value(o.payments[0].amount))
54- let E = D._1
55- let F = D._2
56- if (!(k(E)))
57- then throw("Token is not NFT")
58- else [StringEntry(((c + a) + toBase58String(value(o.payments[0].assetId))), B), StringEntry(((toString(o.caller) + a) + d), ((toBase58String(E) + a) + toString(F)))]
59- }
60-
61-
62-
63-@Callable(o)
64-func buyNFT (G,H) = {
65- let l = fromBase58String(G)
66- let I = value(o.payments[0].amount)
67- let J = {
68- let m = getString(this, (("nft_" + H) + "_owner"))
69- if ($isInstanceOf(m, "String"))
70- then {
71- let K = m
72- K
73- }
74- else false
75- }
76- let B = getStringValue(((((c + a) + G) + "_") + H))
77- if ((H == toString(o.caller)))
78- then throw("current Owner of NFT not able to purchase")
79- else if ((o.payments[0].assetId == f))
80- then [ScriptTransfer(o.caller, 1, l), ScriptTransfer(Address(fromBase58String(H)), I, f), StringEntry(((toString(o.caller) + a) + b), ((G + a) + toString(I))), DeleteEntry((("nft_" + H) + "_owner")), StringEntry((("nft_" + H) + "_owner"), toString(o.caller)), StringEntry(((G + a) + "_owner"), toString(o.caller))]
81- else [ScriptTransfer(o.caller, 1, l), ScriptTransfer(Address(fromBase58String(H)), I, unit), StringEntry(((toString(o.caller) + a) + b), ((G + a) + toString(I))), DeleteEntry((("nft_" + H) + "_owner")), StringEntry((("nft_" + H) + "_owner"), toString(o.caller)), StringEntry(((G + a) + "_owner"), toString(o.caller))]
82- }
83-
84-
85-
86-@Callable(o)
87-func cancelSell (L) = {
88- let A = toBase58String(o.transactionId)
89- let C = o.caller.bytes
90-[StringEntry(((A + L) + "_nft_status"), "CANCELED"), ScriptTransfer(Address(C), 1, fromBase58String(L))]
91- }
92-
93-
94-
95-@Callable(o)
96-func addAuction (M,N,O,P) = {
97- let A = toBase58String(o.transactionId)
98- let L = value(o.payments[0].assetId)
99- let B = value(O)
100- let Q = (lastBlock.height + P)
101- let R = o.caller.bytes
102- let S = {
103- let m = getString(this, (((toBase58String(L) + a) + "nft_status_") + toBase58String(R)))
104- if ($isInstanceOf(m, "String"))
105- then {
106- let K = m
107- true
108- }
109- else false
110- }
111- if ((o.payments[0].assetId == unit))
112- then throw("NFT not attached")
113- else if ((S == true))
114- then throw("Already in auction list")
115- else if ((P > e))
116- then throw(("Duration is too long. Must be less than or equal to 7 " + toString(e)))
117- else [StringEntry(((A + "_nft_start_auction_date_") + toBase58String(R)), M), StringEntry(((A + "_nft_end_auction_date_") + toBase58String(R)), N), StringEntry((A + "_nft_start_price"), O), StringEntry((A + "_nft_owner"), toString(o.caller)), StringEntry((A + "_nft_on_auction"), toBase58String(L)), StringEntry((A + "_previous_bidder"), "none"), StringEntry((A + "_highest_bid"), "0"), StringEntry((A + "_winner_of_nft"), "0"), StringEntry((A + "_bidder_count"), "0"), StringEntry((A + "_nft_status"), "OPEN")]
118- }
119-
120-
121-
122-@Callable(o)
123-func placeBid (T,L,q,U) = {
124- let A = toBase58String(o.transactionId)
125- let R = o.caller.bytes
126- let l = fromBase58String(L)
127- let V = o.payments[0].amount
128- let W = getStringValue(this, (T + "_highest_bid"))
129- let X = getString(this, (T + "_previous_bidder"))
130- let Y = getStringValue(this, (T + "_bidder_count"))
131- let Z = getStringValue(this, (T + "_winner_of_nft"))
132- let S = getStringValue(this, (T + "_nft_status"))
133- if ((o.payments[0].assetId != unit))
134- then throw("Pay in waves")
135- else if ((S != "OPEN"))
136- then throw("Not open for auction")
137- else if ((parseIntValue(W) >= V))
138- then throw("Bid is less then starting/highest Bid")
139- else if ((W == "0"))
140- then [StringEntry((T + "_highest_bid"), toString(V)), StringEntry((T + "_winner_of_nft"), toBase58String(o.caller.bytes)), StringEntry((T + "_bidder_count"), toString((parseIntValue(Y) + 1))), StringEntry((T + "_nft_id"), toBase58String(l)), StringEntry((T + "_nft_owner"), q), StringEntry((((A + "_") + T) + "_highest_bid"), toString(V)), StringEntry((((A + "_") + T) + "_winner"), toBase58String(o.caller.bytes)), StringEntry((((A + "_") + T) + "_bidder_count"), toString((parseIntValue(Y) + 1))), StringEntry((((A + "_") + T) + "_nft_id"), toBase58String(l)), StringEntry((((A + "_") + T) + "_nft_owner"), q), StringEntry((A + "_bid_for_nft_by"), toBase58String(R)), StringEntry((A + "_bid_price_place"), U), StringEntry((A + "_previous_bid_amount_refund_to_address"), Z), StringEntry((A + "_prevoius_bid_amount_refund"), W)]
141- else [StringEntry((T + "_highest_bid"), toString(V)), StringEntry((T + "_winner_of_nft"), toBase58String(o.caller.bytes)), StringEntry((T + "_bidder_count"), toString((parseIntValue(Y) + 1))), StringEntry((T + "_nft_id"), toBase58String(l)), StringEntry((T + "_nft_owner"), q), StringEntry((((A + "_") + T) + "_highest_bid"), toString(V)), StringEntry((((A + "_") + T) + "_winner"), toBase58String(o.caller.bytes)), StringEntry((((A + "_") + T) + "_bidder_count"), toString((parseIntValue(Y) + 1))), StringEntry((((A + "_") + T) + "_nft_id"), toBase58String(l)), StringEntry((((A + "_") + T) + "_nft_owner"), q), StringEntry((A + "_bid_for_nft_by"), toBase58String(R)), StringEntry((A + "_bid_price_place"), U), StringEntry((A + "_previous_bid_amount_refund_to_address"), Z), StringEntry((A + "_prevoius_bid_amount_refund"), W), ScriptTransfer(Address(fromBase58String(Z)), parseIntValue(W), unit)]
142- }
143-
144-
145-
146-@Callable(o)
147-func acceptBidOffer (T,L,aa) = {
148- let A = toBase58String(o.transactionId)
149- let R = o.caller.bytes
150- let l = fromBase58String(L)
151- let ab = getStringValue(this, (T + "_highest_bid"))
152- let ac = getStringValue(this, (T + "_winner_of_nft"))
153-[ScriptTransfer(Address(R), parseIntValue(ab), unit), ScriptTransfer(Address(fromBase58String(ac)), 1, l), StringEntry((A + "_amount_paid_to_owner"), ab), StringEntry((A + "_nft_transfer_to"), ac), StringEntry((A + "_nft_status"), "REWARDED"), StringEntry((T + "_amount_paid_to_owner"), ab), StringEntry((T + "_nft_transfer_to"), ac), StringEntry((T + "_nft_status"), "REWARDED")]
154- }
155-
156-
157-
158-@Callable(o)
159-func cancelAuction (T) = {
160- let A = toBase58String(o.transactionId)
161- let R = o.caller.bytes
162- let ad = getStringValue(this, (T + "_nft_status"))
163- let ae = getStringValue(this, (T + "_winner_of_nft"))
164- let af = getStringValue(this, (T + "_nft_owner"))
165- let L = getStringValue(this, (T + "_nft_on_auction"))
166- let ag = getStringValue(this, (T + "_highest_bid"))
167- if ((ae == "0"))
168- then [StringEntry(((A + T) + "_nft_status"), "CANCELED"), ScriptTransfer(Address(fromBase58String(af)), 1, fromBase58String(L))]
169- else [StringEntry((T + "_nft_status"), "CANCELED"), StringEntry((T + "_previous_bid_amount_refund_to_address"), ae), StringEntry((T + "_prevoius_bid_amount_refund"), ag), StringEntry((A + "_nft_status"), "CANCELED"), StringEntry((A + "_previous_bid_amount_refund_to_address"), ae), StringEntry((A + "_prevoius_bid_amount_refund"), ag), ScriptTransfer(Address(fromBase58String(af)), 1, fromBase58String(L)), ScriptTransfer(Address(fromBase58String(ae)), parseIntValue(ag), unit)]
170- }
171-
172-
173-
174-@Callable(o)
175-func withdrawBid (ah) = {
176- let R = o.caller.bytes
177- let ai = getStringValue(this, (ah + "_highest_bid"))
178- let aj = getStringValue(this, (ah + "_winner"))
179- let ak = getStringValue(this, (ah + "_nft_id"))
180- if ((toBase58String(R) != aj))
181- then throw("No bid")
182- else [StringEntry((ah + "_nft_bid"), "WITHDRAW"), StringEntry((ah + "_nft_id"), ak), StringEntry((ah + "_bidding_price_refund_amount"), ai), ScriptTransfer(o.caller, parseIntValue(ai), unit)]
183- }
184-
185-
186-
187-@Callable(o)
188-func manualFundTransfer (al,am) = {
189- let R = o.caller.bytes
190- let an = fromBase58String(al)
191- let I = o.payments[0].amount
192- if ((toString(I) == ""))
193- then throw("Payment is not attached or empty")
194- else [IntegerEntry((toBase58String(R) + "_transfer"), I), StringEntry((toBase58String(R) + "_transfer_to"), al), ScriptTransfer(Address(an), I, f)]
195- }
196-
197-
198-
199-@Callable(o)
200-func testBid (ao) = [StringEntry("E8kkFBYCy44JJaq6pAZ6KizsuResi5UKNhbD1WNZwhhY_highest_bid", "0")]
20148
20249
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = "_"
55
66 let b = "buy"
77
88 let c = "price"
99
1010 let d = "sell"
1111
12-let e = 7
12+let e = base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq'
1313
14-let f = base58'9yhJDfWjPpv6tFjWRD1AJyBQwausJf2ZdxzLn86Uknnq'
14+let f = base58''
1515
16-let g = base58''
16+let g = 7
1717
1818 let h = "bid"
1919
2020 let i = $Tuple4("OPEN", "CLOSED", "REWARDED", "CANCELED")
2121
2222 let j = base58'3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq'
2323
2424 func k (l) = {
2525 let m = assetInfo(l)
2626 if ($isInstanceOf(m, "Asset"))
2727 then {
2828 let n = m
2929 if (if ((n.decimals == 0))
3030 then (n.quantity == 1)
3131 else false)
3232 then (n.reissuable == false)
3333 else false
3434 }
3535 else false
3636 }
3737
3838
3939 @Callable(o)
40-func createNft (p,q,r,s,t,u,v,w,x) = {
41- let y = Issue(p, v, 1, 0, false)
42- let z = calculateAssetId(y)
43- let A = o.transactionId
44-[y, ScriptTransfer(o.caller, 1, z), StringEntry(((toBase58String(z) + a) + "Owner"), toString(o.caller)), StringEntry(((toBase58String(z) + a) + "nft_type"), s), StringEntry(((toBase58String(z) + a) + "nft_tags"), t), StringEntry(((toBase58String(z) + a) + "nft_dAppAddress"), r), IntegerEntry(((toBase58String(z) + a) + "nft_selling_price"), u), StringEntry(((toBase58String(z) + a) + "nft_onSell"), w), StringEntry(((toBase58String(z) + a) + "nft_data"), x), StringEntry(((toBase58String(A) + a) + "issue_nft"), toBase58String(z))]
40+func manualFundTransfer (p,q) = {
41+ let r = o.caller.bytes
42+ let s = fromBase58String(p)
43+ let t = o.payments[0].amount
44+ if ((toString(t) == "teams"))
45+ then [IntegerEntry((toBase58String(r) + "_transfer"), t), StringEntry((toBase58String(r) + "_transfer_to"), p), ScriptTransfer(Address(s), t, e)]
46+ else [IntegerEntry((toBase58String(r) + "_transfer"), t), StringEntry((toBase58String(r) + "_transfer_to"), p), ScriptTransfer(Address(s), t, unit)]
4547 }
46-
47-
48-
49-@Callable(o)
50-func sellNFT (B) = {
51- let A = o.transactionId
52- let C = o.caller.bytes
53- let D = $Tuple2(value(o.payments[0].assetId), value(o.payments[0].amount))
54- let E = D._1
55- let F = D._2
56- if (!(k(E)))
57- then throw("Token is not NFT")
58- else [StringEntry(((c + a) + toBase58String(value(o.payments[0].assetId))), B), StringEntry(((toString(o.caller) + a) + d), ((toBase58String(E) + a) + toString(F)))]
59- }
60-
61-
62-
63-@Callable(o)
64-func buyNFT (G,H) = {
65- let l = fromBase58String(G)
66- let I = value(o.payments[0].amount)
67- let J = {
68- let m = getString(this, (("nft_" + H) + "_owner"))
69- if ($isInstanceOf(m, "String"))
70- then {
71- let K = m
72- K
73- }
74- else false
75- }
76- let B = getStringValue(((((c + a) + G) + "_") + H))
77- if ((H == toString(o.caller)))
78- then throw("current Owner of NFT not able to purchase")
79- else if ((o.payments[0].assetId == f))
80- then [ScriptTransfer(o.caller, 1, l), ScriptTransfer(Address(fromBase58String(H)), I, f), StringEntry(((toString(o.caller) + a) + b), ((G + a) + toString(I))), DeleteEntry((("nft_" + H) + "_owner")), StringEntry((("nft_" + H) + "_owner"), toString(o.caller)), StringEntry(((G + a) + "_owner"), toString(o.caller))]
81- else [ScriptTransfer(o.caller, 1, l), ScriptTransfer(Address(fromBase58String(H)), I, unit), StringEntry(((toString(o.caller) + a) + b), ((G + a) + toString(I))), DeleteEntry((("nft_" + H) + "_owner")), StringEntry((("nft_" + H) + "_owner"), toString(o.caller)), StringEntry(((G + a) + "_owner"), toString(o.caller))]
82- }
83-
84-
85-
86-@Callable(o)
87-func cancelSell (L) = {
88- let A = toBase58String(o.transactionId)
89- let C = o.caller.bytes
90-[StringEntry(((A + L) + "_nft_status"), "CANCELED"), ScriptTransfer(Address(C), 1, fromBase58String(L))]
91- }
92-
93-
94-
95-@Callable(o)
96-func addAuction (M,N,O,P) = {
97- let A = toBase58String(o.transactionId)
98- let L = value(o.payments[0].assetId)
99- let B = value(O)
100- let Q = (lastBlock.height + P)
101- let R = o.caller.bytes
102- let S = {
103- let m = getString(this, (((toBase58String(L) + a) + "nft_status_") + toBase58String(R)))
104- if ($isInstanceOf(m, "String"))
105- then {
106- let K = m
107- true
108- }
109- else false
110- }
111- if ((o.payments[0].assetId == unit))
112- then throw("NFT not attached")
113- else if ((S == true))
114- then throw("Already in auction list")
115- else if ((P > e))
116- then throw(("Duration is too long. Must be less than or equal to 7 " + toString(e)))
117- else [StringEntry(((A + "_nft_start_auction_date_") + toBase58String(R)), M), StringEntry(((A + "_nft_end_auction_date_") + toBase58String(R)), N), StringEntry((A + "_nft_start_price"), O), StringEntry((A + "_nft_owner"), toString(o.caller)), StringEntry((A + "_nft_on_auction"), toBase58String(L)), StringEntry((A + "_previous_bidder"), "none"), StringEntry((A + "_highest_bid"), "0"), StringEntry((A + "_winner_of_nft"), "0"), StringEntry((A + "_bidder_count"), "0"), StringEntry((A + "_nft_status"), "OPEN")]
118- }
119-
120-
121-
122-@Callable(o)
123-func placeBid (T,L,q,U) = {
124- let A = toBase58String(o.transactionId)
125- let R = o.caller.bytes
126- let l = fromBase58String(L)
127- let V = o.payments[0].amount
128- let W = getStringValue(this, (T + "_highest_bid"))
129- let X = getString(this, (T + "_previous_bidder"))
130- let Y = getStringValue(this, (T + "_bidder_count"))
131- let Z = getStringValue(this, (T + "_winner_of_nft"))
132- let S = getStringValue(this, (T + "_nft_status"))
133- if ((o.payments[0].assetId != unit))
134- then throw("Pay in waves")
135- else if ((S != "OPEN"))
136- then throw("Not open for auction")
137- else if ((parseIntValue(W) >= V))
138- then throw("Bid is less then starting/highest Bid")
139- else if ((W == "0"))
140- then [StringEntry((T + "_highest_bid"), toString(V)), StringEntry((T + "_winner_of_nft"), toBase58String(o.caller.bytes)), StringEntry((T + "_bidder_count"), toString((parseIntValue(Y) + 1))), StringEntry((T + "_nft_id"), toBase58String(l)), StringEntry((T + "_nft_owner"), q), StringEntry((((A + "_") + T) + "_highest_bid"), toString(V)), StringEntry((((A + "_") + T) + "_winner"), toBase58String(o.caller.bytes)), StringEntry((((A + "_") + T) + "_bidder_count"), toString((parseIntValue(Y) + 1))), StringEntry((((A + "_") + T) + "_nft_id"), toBase58String(l)), StringEntry((((A + "_") + T) + "_nft_owner"), q), StringEntry((A + "_bid_for_nft_by"), toBase58String(R)), StringEntry((A + "_bid_price_place"), U), StringEntry((A + "_previous_bid_amount_refund_to_address"), Z), StringEntry((A + "_prevoius_bid_amount_refund"), W)]
141- else [StringEntry((T + "_highest_bid"), toString(V)), StringEntry((T + "_winner_of_nft"), toBase58String(o.caller.bytes)), StringEntry((T + "_bidder_count"), toString((parseIntValue(Y) + 1))), StringEntry((T + "_nft_id"), toBase58String(l)), StringEntry((T + "_nft_owner"), q), StringEntry((((A + "_") + T) + "_highest_bid"), toString(V)), StringEntry((((A + "_") + T) + "_winner"), toBase58String(o.caller.bytes)), StringEntry((((A + "_") + T) + "_bidder_count"), toString((parseIntValue(Y) + 1))), StringEntry((((A + "_") + T) + "_nft_id"), toBase58String(l)), StringEntry((((A + "_") + T) + "_nft_owner"), q), StringEntry((A + "_bid_for_nft_by"), toBase58String(R)), StringEntry((A + "_bid_price_place"), U), StringEntry((A + "_previous_bid_amount_refund_to_address"), Z), StringEntry((A + "_prevoius_bid_amount_refund"), W), ScriptTransfer(Address(fromBase58String(Z)), parseIntValue(W), unit)]
142- }
143-
144-
145-
146-@Callable(o)
147-func acceptBidOffer (T,L,aa) = {
148- let A = toBase58String(o.transactionId)
149- let R = o.caller.bytes
150- let l = fromBase58String(L)
151- let ab = getStringValue(this, (T + "_highest_bid"))
152- let ac = getStringValue(this, (T + "_winner_of_nft"))
153-[ScriptTransfer(Address(R), parseIntValue(ab), unit), ScriptTransfer(Address(fromBase58String(ac)), 1, l), StringEntry((A + "_amount_paid_to_owner"), ab), StringEntry((A + "_nft_transfer_to"), ac), StringEntry((A + "_nft_status"), "REWARDED"), StringEntry((T + "_amount_paid_to_owner"), ab), StringEntry((T + "_nft_transfer_to"), ac), StringEntry((T + "_nft_status"), "REWARDED")]
154- }
155-
156-
157-
158-@Callable(o)
159-func cancelAuction (T) = {
160- let A = toBase58String(o.transactionId)
161- let R = o.caller.bytes
162- let ad = getStringValue(this, (T + "_nft_status"))
163- let ae = getStringValue(this, (T + "_winner_of_nft"))
164- let af = getStringValue(this, (T + "_nft_owner"))
165- let L = getStringValue(this, (T + "_nft_on_auction"))
166- let ag = getStringValue(this, (T + "_highest_bid"))
167- if ((ae == "0"))
168- then [StringEntry(((A + T) + "_nft_status"), "CANCELED"), ScriptTransfer(Address(fromBase58String(af)), 1, fromBase58String(L))]
169- else [StringEntry((T + "_nft_status"), "CANCELED"), StringEntry((T + "_previous_bid_amount_refund_to_address"), ae), StringEntry((T + "_prevoius_bid_amount_refund"), ag), StringEntry((A + "_nft_status"), "CANCELED"), StringEntry((A + "_previous_bid_amount_refund_to_address"), ae), StringEntry((A + "_prevoius_bid_amount_refund"), ag), ScriptTransfer(Address(fromBase58String(af)), 1, fromBase58String(L)), ScriptTransfer(Address(fromBase58String(ae)), parseIntValue(ag), unit)]
170- }
171-
172-
173-
174-@Callable(o)
175-func withdrawBid (ah) = {
176- let R = o.caller.bytes
177- let ai = getStringValue(this, (ah + "_highest_bid"))
178- let aj = getStringValue(this, (ah + "_winner"))
179- let ak = getStringValue(this, (ah + "_nft_id"))
180- if ((toBase58String(R) != aj))
181- then throw("No bid")
182- else [StringEntry((ah + "_nft_bid"), "WITHDRAW"), StringEntry((ah + "_nft_id"), ak), StringEntry((ah + "_bidding_price_refund_amount"), ai), ScriptTransfer(o.caller, parseIntValue(ai), unit)]
183- }
184-
185-
186-
187-@Callable(o)
188-func manualFundTransfer (al,am) = {
189- let R = o.caller.bytes
190- let an = fromBase58String(al)
191- let I = o.payments[0].amount
192- if ((toString(I) == ""))
193- then throw("Payment is not attached or empty")
194- else [IntegerEntry((toBase58String(R) + "_transfer"), I), StringEntry((toBase58String(R) + "_transfer_to"), al), ScriptTransfer(Address(an), I, f)]
195- }
196-
197-
198-
199-@Callable(o)
200-func testBid (ao) = [StringEntry("E8kkFBYCy44JJaq6pAZ6KizsuResi5UKNhbD1WNZwhhY_highest_bid", "0")]
20148
20249

github/deemru/w8io/169f3d6 
48.37 ms