tx · 7QiuvxFLEf4dRpUJkD3JQhxnAREpSE2H2KCHdWSirzqj

3NBYw8rxLmTvyEdsvaYor8nHG6GJ4NjB2Aw:  -0.01000000 Waves

2023.01.23 13:29 [2417469] smart account 3NBYw8rxLmTvyEdsvaYor8nHG6GJ4NjB2Aw > SELF 0.00000000 Waves

{ "type": 13, "id": "7QiuvxFLEf4dRpUJkD3JQhxnAREpSE2H2KCHdWSirzqj", "fee": 1000000, "feeAssetId": null, "timestamp": 1674469874358, "version": 2, "chainId": 84, "sender": "3NBYw8rxLmTvyEdsvaYor8nHG6GJ4NjB2Aw", "senderPublicKey": "4NDsd3dGKXuKLCoSbYvcWCX276K9ShP75cs9HTBMLJEN", "proofs": [ "WtEvahNigGsSL9qCZzRxDHfGyprd8SpwnLYtLfsudAHqSXnPPUPRoerY7GGTJKJqZcPfkpv8qXirqPnNBRimUBC" ], "script": "base64:BgIaCAISCwoJCAgICAgBCAgIEgMKAQgSBAoCCAgJAAlzZXBhcmF0b3ICAV8ABGtCdXkCA2J1eQAGa1ByaWNlAgVwcmljZQAFa1NlbGwCBHNlbGwAEm1heEF1Y3Rpb25EdXJhdGlvbgAHAARrQmlkAgNiaWQADHN0YXR1c0Zvck5GVAkAlgoEAgRPUEVOAgZDTE9TRUQCCFJFV0FSREVEAghDQU5DRUxFRAALZEFwcEFkZHJlc3MBGgFUSrhPbN7C2pPt9I7pSjb41U9/ldVVW12gAQVpc05mdAEHYXNzZXRJZAQHJG1hdGNoMAkA7AcBBQdhc3NldElkAwkAAQIFByRtYXRjaDACBUFzc2V0BAV0b2tlbgUHJG1hdGNoMAMDCQAAAggFBXRva2VuCGRlY2ltYWxzAAAJAAACCAUFdG9rZW4IcXVhbnRpdHkAAQcJAAACCAUFdG9rZW4KcmVpc3N1YWJsZQcHBwMBaQEJY3JlYXRlTmZ0CQhuZnRfbmFtZQluZnRfb3duZXIPbmZ0X2RBcHBBZGRyZXNzCG5mdF90eXBlCG5mdF90YWdzEW5mdF9zZWxsaW5nX3ByaWNlD25mdF9kZXNjcmlwdGlvbgpuZnRfb25TZWxsCG5mdF9kYXRhBAhuZXdUb2tlbgkAwggFBQhuZnRfbmFtZQUPbmZ0X2Rlc2NyaXB0aW9uAAEAAAcEB2lzc3VlSWQJALgIAQUIbmV3VG9rZW4EBHR4SWQIBQFpDXRyYW5zYWN0aW9uSWQJAMwIAgUIbmV3VG9rZW4JAMwIAgkBDlNjcmlwdFRyYW5zZmVyAwgFAWkGY2FsbGVyAAEFB2lzc3VlSWQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJANgEAQUHaXNzdWVJZAUJc2VwYXJhdG9yAgVPd25lcgkApQgBCAUBaQZjYWxsZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJANgEAQUHaXNzdWVJZAUJc2VwYXJhdG9yAghuZnRfdHlwZQUIbmZ0X3R5cGUJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJANgEAQUHaXNzdWVJZAUJc2VwYXJhdG9yAghuZnRfdGFncwUIbmZ0X3RhZ3MJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJANgEAQUHaXNzdWVJZAUJc2VwYXJhdG9yAg9uZnRfZEFwcEFkZHJlc3MFD25mdF9kQXBwQWRkcmVzcwkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgIJANgEAQUHaXNzdWVJZAUJc2VwYXJhdG9yAhFuZnRfc2VsbGluZ19wcmljZQURbmZ0X3NlbGxpbmdfcHJpY2UJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJANgEAQUHaXNzdWVJZAUJc2VwYXJhdG9yAgpuZnRfb25TZWxsBQpuZnRfb25TZWxsCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQDYBAEFB2lzc3VlSWQFCXNlcGFyYXRvcgIIbmZ0X2RhdGEFCG5mdF9kYXRhCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQDYBAEFBHR4SWQFCXNlcGFyYXRvcgIJaXNzdWVfbmZ0CQDYBAEFB2lzc3VlSWQFA25pbAFpAQdzZWxsTkZUAQVwcmljZQQEdHhJZAgFAWkNdHJhbnNhY3Rpb25JZAQGc2VsbGVyCAgFAWkGY2FsbGVyBWJ5dGVzBAskdDAxNzkyMTg3NwkAlAoCCQEFdmFsdWUBCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQJAQV2YWx1ZQEICQCRAwIIBQFpCHBheW1lbnRzAAAGYW1vdW50BAZ0b2tlbjAIBQskdDAxNzkyMTg3NwJfMQQHYW1vdW50MAgFCyR0MDE3OTIxODc3Al8yAwkBASEBCQEFaXNOZnQBBQZ0b2tlbjAJAAIBAhBUb2tlbiBpcyBub3QgTkZUCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICBQZrUHJpY2UFCXNlcGFyYXRvcgkA2AQBCQEFdmFsdWUBCAkAkQMCCAUBaQhwYXltZW50cwAAB2Fzc2V0SWQFBXByaWNlCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQClCAEIBQFpBmNhbGxlcgUJc2VwYXJhdG9yBQVrU2VsbAkArAICCQCsAgIJANgEAQUGdG9rZW4wBQlzZXBhcmF0b3IJAKQDAQUHYW1vdW50MAUDbmlsAWkBBmJ1eU5GVAIFbmZ0SUQRY3VycmVudF9uZnRfb3duZXIEB2Fzc2V0SWQJANkEAQUFbmZ0SUQEBmFtb3VudAkBBXZhbHVlAQgJAJEDAggFAWkIcGF5bWVudHMAAAZhbW91bnQEEGNoZWNrT3duZXJJc1NhbWUEByRtYXRjaDAJAJ0IAgUEdGhpcwkArAICCQCsAgICBG5mdF8FEWN1cnJlbnRfbmZ0X293bmVyAgZfb3duZXIDCQABAgUHJG1hdGNoMAIGU3RyaW5nBAFhBQckbWF0Y2gwBQFhBwQFcHJpY2UJARFAZXh0ck5hdGl2ZSgxMDU4KQEJAKwCAgkArAICCQCsAgIJAKwCAgUGa1ByaWNlBQlzZXBhcmF0b3IFBW5mdElEAgFfBRFjdXJyZW50X25mdF9vd25lcgMJAAACBRFjdXJyZW50X25mdF9vd25lcgkApQgBCAUBaQZjYWxsZXIJAAIBAiljdXJyZW50IE93bmVyIG9mIE5GVCBub3QgYWJsZSB0byBwdXJjaGFzZQkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCAUBaQZjYWxsZXIAAQUHYXNzZXRJZAkAzAgCCQEOU2NyaXB0VHJhbnNmZXIDCQEHQWRkcmVzcwEJANkEAQURY3VycmVudF9uZnRfb3duZXIFBmFtb3VudAUEdW5pdAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkApQgBCAUBaQZjYWxsZXIFCXNlcGFyYXRvcgUEa0J1eQkArAICCQCsAgIFBW5mdElEBQlzZXBhcmF0b3IJAKQDAQUGYW1vdW50CQDMCAIJAQtEZWxldGVFbnRyeQEJAKwCAgkArAICAgRuZnRfBRFjdXJyZW50X25mdF9vd25lcgIGX293bmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgRuZnRfBRFjdXJyZW50X25mdF9vd25lcgIGX293bmVyCQClCAEIBQFpBmNhbGxlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgUFbmZ0SUQFCXNlcGFyYXRvcgIGX293bmVyCQClCAEIBQFpBmNhbGxlcgUDbmlsAHJdct8=", "height": 2417469, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: H5c2guDHMccbCrpwk5fX6Eq7s8UKXb6B8gUcwyr4LhNn Next: DFRTPFnUanQgUyoLbxExrRgPpPFEAQ1b8s5iqfe4im5j Diff:
OldNewDifferences
7676 }
7777
7878
79-
80-@Callable(m)
81-func addAuction (J,K,L,M) = {
82- let y = toBase58String(m.transactionId)
83- let N = value(m.payments[0].assetId)
84- let z = value(L)
85- let O = (lastBlock.height + M)
86- let P = m.caller.bytes
87- let Q = {
88- let k = getString(this, (((toBase58String(N) + a) + "nft_status_") + toBase58String(P)))
89- if ($isInstanceOf(k, "String"))
90- then {
91- let I = k
92- true
93- }
94- else false
95- }
96- if ((m.payments[0].assetId == unit))
97- then throw("NFT not attached")
98- else if ((Q == true))
99- then throw("Already in auction list")
100- else if ((M > e))
101- then throw(("Duration is too long. Must be less than or equal to 7 " + toString(e)))
102- else [StringEntry(((y + "_nft_start_auction_date_") + toBase58String(P)), J), StringEntry(((y + "_nft_end_auction_date_") + toBase58String(P)), K), StringEntry((y + "_nft_start_price"), L), StringEntry((y + "_nft_owner"), toString(m.caller)), StringEntry((y + "_nft_on_auction"), toBase58String(N)), StringEntry((y + "_previous_bidder"), "none"), StringEntry((y + "_highest_bid"), "0"), StringEntry((y + "_winner_of_nft"), "0"), StringEntry((y + "_bidder_count"), "0"), StringEntry((y + "_nft_status"), "OPEN")]
103- }
104-
105-
106-
107-@Callable(m)
108-func placeBid (R,N,o,S) = {
109- let y = toBase58String(m.transactionId)
110- let P = m.caller.bytes
111- let j = fromBase58String(N)
112- let T = m.payments[0].amount
113- let U = getStringValue(this, (R + "_highest_bid"))
114- let V = getString(this, (R + "_previous_bidder"))
115- let W = getStringValue(this, (R + "_bidder_count"))
116- let X = getStringValue(this, (R + "_winner_of_nft"))
117- let Q = getStringValue(this, (R + "_nft_status"))
118- if ((m.payments[0].assetId != unit))
119- then throw("Pay in waves")
120- else if ((Q != "OPEN"))
121- then throw("Not open for auction")
122- else if ((parseIntValue(U) >= T))
123- then throw("Bid is less then starting/highest Bid")
124- else if ((U == "0"))
125- then [StringEntry((R + "_highest_bid"), toString(T)), StringEntry((R + "_winner_of_nft"), toBase58String(m.caller.bytes)), StringEntry((R + "_bidder_count"), toString((parseIntValue(W) + 1))), StringEntry((R + "_nft_id"), toBase58String(j)), StringEntry((R + "_nft_owner"), o), StringEntry((((y + "_") + R) + "_highest_bid"), toString(T)), StringEntry((((y + "_") + R) + "_winner"), toBase58String(m.caller.bytes)), StringEntry((((y + "_") + R) + "_bidder_count"), toString((parseIntValue(W) + 1))), StringEntry((((y + "_") + R) + "_nft_id"), toBase58String(j)), StringEntry((((y + "_") + R) + "_nft_owner"), o), StringEntry((y + "_bid_for_nft_by"), toBase58String(P)), StringEntry((y + "_bid_price_place"), S), StringEntry((y + "_previous_bid_amount_refund_to_address"), X), StringEntry((y + "_prevoius_bid_amount_refund"), U)]
126- else [StringEntry((R + "_highest_bid"), toString(T)), StringEntry((R + "_winner_of_nft"), toBase58String(m.caller.bytes)), StringEntry((R + "_bidder_count"), toString((parseIntValue(W) + 1))), StringEntry((R + "_nft_id"), toBase58String(j)), StringEntry((R + "_nft_owner"), o), StringEntry((((y + "_") + R) + "_highest_bid"), toString(T)), StringEntry((((y + "_") + R) + "_winner"), toBase58String(m.caller.bytes)), StringEntry((((y + "_") + R) + "_bidder_count"), toString((parseIntValue(W) + 1))), StringEntry((((y + "_") + R) + "_nft_id"), toBase58String(j)), StringEntry((((y + "_") + R) + "_nft_owner"), o), StringEntry((y + "_bid_for_nft_by"), toBase58String(P)), StringEntry((y + "_bid_price_place"), S), StringEntry((y + "_previous_bid_amount_refund_to_address"), X), StringEntry((y + "_prevoius_bid_amount_refund"), U), ScriptTransfer(Address(fromBase58String(X)), parseIntValue(U), unit)]
127- }
128-
129-
130-
131-@Callable(m)
132-func acceptBidOffer (R,N,Y) = {
133- let y = toBase58String(m.transactionId)
134- let P = m.caller.bytes
135- let j = fromBase58String(N)
136- let Z = getStringValue(this, (R + "_highest_bid"))
137- let aa = getStringValue(this, (R + "_winner_of_nft"))
138-[ScriptTransfer(Address(P), parseIntValue(Z), unit), ScriptTransfer(Address(fromBase58String(aa)), 1, j), StringEntry((y + "_amount_paid_to_owner"), Z), StringEntry((y + "_nft_transfer_to"), aa), StringEntry((y + "_nft_status"), "REWARDED"), StringEntry((R + "_amount_paid_to_owner"), Z), StringEntry((R + "_nft_transfer_to"), aa), StringEntry((R + "_nft_status"), "REWARDED")]
139- }
140-
141-
142-
143-@Callable(m)
144-func cancelAuction (R) = {
145- let y = toBase58String(m.transactionId)
146- let P = m.caller.bytes
147- let ab = getStringValue(this, (R + "_nft_status"))
148- let ac = getStringValue(this, (R + "_winner_of_nft"))
149- let ad = getStringValue(this, (R + "_nft_owner"))
150- let N = getStringValue(this, (R + "_nft_on_auction"))
151- let ae = getStringValue(this, (R + "_highest_bid"))
152- if ((ac == "0"))
153- then [StringEntry(((y + R) + "_nft_status"), "CANCELED"), ScriptTransfer(Address(fromBase58String(ad)), 1, fromBase58String(N))]
154- else [StringEntry((R + "_nft_status"), "CANCELED"), StringEntry((R + "_previous_bid_amount_refund_to_address"), ac), StringEntry((R + "_prevoius_bid_amount_refund"), ae), StringEntry((y + "_nft_status"), "CANCELED"), StringEntry((y + "_previous_bid_amount_refund_to_address"), ac), StringEntry((y + "_prevoius_bid_amount_refund"), ae), ScriptTransfer(Address(fromBase58String(ad)), 1, fromBase58String(N)), ScriptTransfer(Address(fromBase58String(ac)), parseIntValue(ae), unit)]
155- }
156-
157-
158-
159-@Callable(m)
160-func withdrawBid (af) = {
161- let P = m.caller.bytes
162- let ag = getStringValue(this, (af + "_highest_bid"))
163- let ah = getStringValue(this, (af + "_winner"))
164- let ai = getStringValue(this, (af + "_nft_id"))
165- if ((toBase58String(P) != ah))
166- then throw("No bid")
167- else [StringEntry((af + "_nft_bid"), "WITHDRAW"), StringEntry((af + "_nft_id"), ai), StringEntry((af + "_bidding_price_refund_amount"), ag), ScriptTransfer(m.caller, parseIntValue(ag), unit)]
168- }
169-
170-
171-
172-@Callable(m)
173-func manualFundTransfer (aj,ak) = {
174- let P = m.caller.bytes
175- let al = fromBase58String(aj)
176- let G = m.payments[0].amount
177- if ((toString(G) == ""))
178- then throw("Payment is not attached or empty")
179- else [IntegerEntry((toBase58String(P) + "_transfer"), G), StringEntry((toBase58String(P) + "_transfer_to"), aj), ScriptTransfer(Address(al), G, unit)]
180- }
181-
182-
183-
184-@Callable(m)
185-func testBid (am) = [StringEntry("E8kkFBYCy44JJaq6pAZ6KizsuResi5UKNhbD1WNZwhhY_highest_bid", "0")]
186-
187-
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
1212 let e = 7
1313
1414 let f = "bid"
1515
1616 let g = $Tuple4("OPEN", "CLOSED", "REWARDED", "CANCELED")
1717
1818 let h = base58'3MvjAaDYHpS4A5K4CV3kZMMEH9m9JdBSvbq'
1919
2020 func i (j) = {
2121 let k = assetInfo(j)
2222 if ($isInstanceOf(k, "Asset"))
2323 then {
2424 let l = k
2525 if (if ((l.decimals == 0))
2626 then (l.quantity == 1)
2727 else false)
2828 then (l.reissuable == false)
2929 else false
3030 }
3131 else false
3232 }
3333
3434
3535 @Callable(m)
3636 func createNft (n,o,p,q,r,s,t,u,v) = {
3737 let w = Issue(n, t, 1, 0, false)
3838 let x = calculateAssetId(w)
3939 let y = m.transactionId
4040 [w, ScriptTransfer(m.caller, 1, x), StringEntry(((toBase58String(x) + a) + "Owner"), toString(m.caller)), StringEntry(((toBase58String(x) + a) + "nft_type"), q), StringEntry(((toBase58String(x) + a) + "nft_tags"), r), StringEntry(((toBase58String(x) + a) + "nft_dAppAddress"), p), IntegerEntry(((toBase58String(x) + a) + "nft_selling_price"), s), StringEntry(((toBase58String(x) + a) + "nft_onSell"), u), StringEntry(((toBase58String(x) + a) + "nft_data"), v), StringEntry(((toBase58String(y) + a) + "issue_nft"), toBase58String(x))]
4141 }
4242
4343
4444
4545 @Callable(m)
4646 func sellNFT (z) = {
4747 let y = m.transactionId
4848 let A = m.caller.bytes
4949 let B = $Tuple2(value(m.payments[0].assetId), value(m.payments[0].amount))
5050 let C = B._1
5151 let D = B._2
5252 if (!(i(C)))
5353 then throw("Token is not NFT")
5454 else [StringEntry(((c + a) + toBase58String(value(m.payments[0].assetId))), z), StringEntry(((toString(m.caller) + a) + d), ((toBase58String(C) + a) + toString(D)))]
5555 }
5656
5757
5858
5959 @Callable(m)
6060 func buyNFT (E,F) = {
6161 let j = fromBase58String(E)
6262 let G = value(m.payments[0].amount)
6363 let H = {
6464 let k = getString(this, (("nft_" + F) + "_owner"))
6565 if ($isInstanceOf(k, "String"))
6666 then {
6767 let I = k
6868 I
6969 }
7070 else false
7171 }
7272 let z = getStringValue(((((c + a) + E) + "_") + F))
7373 if ((F == toString(m.caller)))
7474 then throw("current Owner of NFT not able to purchase")
7575 else [ScriptTransfer(m.caller, 1, j), ScriptTransfer(Address(fromBase58String(F)), G, unit), StringEntry(((toString(m.caller) + a) + b), ((E + a) + toString(G))), DeleteEntry((("nft_" + F) + "_owner")), StringEntry((("nft_" + F) + "_owner"), toString(m.caller)), StringEntry(((E + a) + "_owner"), toString(m.caller))]
7676 }
7777
7878
79-
80-@Callable(m)
81-func addAuction (J,K,L,M) = {
82- let y = toBase58String(m.transactionId)
83- let N = value(m.payments[0].assetId)
84- let z = value(L)
85- let O = (lastBlock.height + M)
86- let P = m.caller.bytes
87- let Q = {
88- let k = getString(this, (((toBase58String(N) + a) + "nft_status_") + toBase58String(P)))
89- if ($isInstanceOf(k, "String"))
90- then {
91- let I = k
92- true
93- }
94- else false
95- }
96- if ((m.payments[0].assetId == unit))
97- then throw("NFT not attached")
98- else if ((Q == true))
99- then throw("Already in auction list")
100- else if ((M > e))
101- then throw(("Duration is too long. Must be less than or equal to 7 " + toString(e)))
102- else [StringEntry(((y + "_nft_start_auction_date_") + toBase58String(P)), J), StringEntry(((y + "_nft_end_auction_date_") + toBase58String(P)), K), StringEntry((y + "_nft_start_price"), L), StringEntry((y + "_nft_owner"), toString(m.caller)), StringEntry((y + "_nft_on_auction"), toBase58String(N)), StringEntry((y + "_previous_bidder"), "none"), StringEntry((y + "_highest_bid"), "0"), StringEntry((y + "_winner_of_nft"), "0"), StringEntry((y + "_bidder_count"), "0"), StringEntry((y + "_nft_status"), "OPEN")]
103- }
104-
105-
106-
107-@Callable(m)
108-func placeBid (R,N,o,S) = {
109- let y = toBase58String(m.transactionId)
110- let P = m.caller.bytes
111- let j = fromBase58String(N)
112- let T = m.payments[0].amount
113- let U = getStringValue(this, (R + "_highest_bid"))
114- let V = getString(this, (R + "_previous_bidder"))
115- let W = getStringValue(this, (R + "_bidder_count"))
116- let X = getStringValue(this, (R + "_winner_of_nft"))
117- let Q = getStringValue(this, (R + "_nft_status"))
118- if ((m.payments[0].assetId != unit))
119- then throw("Pay in waves")
120- else if ((Q != "OPEN"))
121- then throw("Not open for auction")
122- else if ((parseIntValue(U) >= T))
123- then throw("Bid is less then starting/highest Bid")
124- else if ((U == "0"))
125- then [StringEntry((R + "_highest_bid"), toString(T)), StringEntry((R + "_winner_of_nft"), toBase58String(m.caller.bytes)), StringEntry((R + "_bidder_count"), toString((parseIntValue(W) + 1))), StringEntry((R + "_nft_id"), toBase58String(j)), StringEntry((R + "_nft_owner"), o), StringEntry((((y + "_") + R) + "_highest_bid"), toString(T)), StringEntry((((y + "_") + R) + "_winner"), toBase58String(m.caller.bytes)), StringEntry((((y + "_") + R) + "_bidder_count"), toString((parseIntValue(W) + 1))), StringEntry((((y + "_") + R) + "_nft_id"), toBase58String(j)), StringEntry((((y + "_") + R) + "_nft_owner"), o), StringEntry((y + "_bid_for_nft_by"), toBase58String(P)), StringEntry((y + "_bid_price_place"), S), StringEntry((y + "_previous_bid_amount_refund_to_address"), X), StringEntry((y + "_prevoius_bid_amount_refund"), U)]
126- else [StringEntry((R + "_highest_bid"), toString(T)), StringEntry((R + "_winner_of_nft"), toBase58String(m.caller.bytes)), StringEntry((R + "_bidder_count"), toString((parseIntValue(W) + 1))), StringEntry((R + "_nft_id"), toBase58String(j)), StringEntry((R + "_nft_owner"), o), StringEntry((((y + "_") + R) + "_highest_bid"), toString(T)), StringEntry((((y + "_") + R) + "_winner"), toBase58String(m.caller.bytes)), StringEntry((((y + "_") + R) + "_bidder_count"), toString((parseIntValue(W) + 1))), StringEntry((((y + "_") + R) + "_nft_id"), toBase58String(j)), StringEntry((((y + "_") + R) + "_nft_owner"), o), StringEntry((y + "_bid_for_nft_by"), toBase58String(P)), StringEntry((y + "_bid_price_place"), S), StringEntry((y + "_previous_bid_amount_refund_to_address"), X), StringEntry((y + "_prevoius_bid_amount_refund"), U), ScriptTransfer(Address(fromBase58String(X)), parseIntValue(U), unit)]
127- }
128-
129-
130-
131-@Callable(m)
132-func acceptBidOffer (R,N,Y) = {
133- let y = toBase58String(m.transactionId)
134- let P = m.caller.bytes
135- let j = fromBase58String(N)
136- let Z = getStringValue(this, (R + "_highest_bid"))
137- let aa = getStringValue(this, (R + "_winner_of_nft"))
138-[ScriptTransfer(Address(P), parseIntValue(Z), unit), ScriptTransfer(Address(fromBase58String(aa)), 1, j), StringEntry((y + "_amount_paid_to_owner"), Z), StringEntry((y + "_nft_transfer_to"), aa), StringEntry((y + "_nft_status"), "REWARDED"), StringEntry((R + "_amount_paid_to_owner"), Z), StringEntry((R + "_nft_transfer_to"), aa), StringEntry((R + "_nft_status"), "REWARDED")]
139- }
140-
141-
142-
143-@Callable(m)
144-func cancelAuction (R) = {
145- let y = toBase58String(m.transactionId)
146- let P = m.caller.bytes
147- let ab = getStringValue(this, (R + "_nft_status"))
148- let ac = getStringValue(this, (R + "_winner_of_nft"))
149- let ad = getStringValue(this, (R + "_nft_owner"))
150- let N = getStringValue(this, (R + "_nft_on_auction"))
151- let ae = getStringValue(this, (R + "_highest_bid"))
152- if ((ac == "0"))
153- then [StringEntry(((y + R) + "_nft_status"), "CANCELED"), ScriptTransfer(Address(fromBase58String(ad)), 1, fromBase58String(N))]
154- else [StringEntry((R + "_nft_status"), "CANCELED"), StringEntry((R + "_previous_bid_amount_refund_to_address"), ac), StringEntry((R + "_prevoius_bid_amount_refund"), ae), StringEntry((y + "_nft_status"), "CANCELED"), StringEntry((y + "_previous_bid_amount_refund_to_address"), ac), StringEntry((y + "_prevoius_bid_amount_refund"), ae), ScriptTransfer(Address(fromBase58String(ad)), 1, fromBase58String(N)), ScriptTransfer(Address(fromBase58String(ac)), parseIntValue(ae), unit)]
155- }
156-
157-
158-
159-@Callable(m)
160-func withdrawBid (af) = {
161- let P = m.caller.bytes
162- let ag = getStringValue(this, (af + "_highest_bid"))
163- let ah = getStringValue(this, (af + "_winner"))
164- let ai = getStringValue(this, (af + "_nft_id"))
165- if ((toBase58String(P) != ah))
166- then throw("No bid")
167- else [StringEntry((af + "_nft_bid"), "WITHDRAW"), StringEntry((af + "_nft_id"), ai), StringEntry((af + "_bidding_price_refund_amount"), ag), ScriptTransfer(m.caller, parseIntValue(ag), unit)]
168- }
169-
170-
171-
172-@Callable(m)
173-func manualFundTransfer (aj,ak) = {
174- let P = m.caller.bytes
175- let al = fromBase58String(aj)
176- let G = m.payments[0].amount
177- if ((toString(G) == ""))
178- then throw("Payment is not attached or empty")
179- else [IntegerEntry((toBase58String(P) + "_transfer"), G), StringEntry((toBase58String(P) + "_transfer_to"), aj), ScriptTransfer(Address(al), G, unit)]
180- }
181-
182-
183-
184-@Callable(m)
185-func testBid (am) = [StringEntry("E8kkFBYCy44JJaq6pAZ6KizsuResi5UKNhbD1WNZwhhY_highest_bid", "0")]
186-
187-

github/deemru/w8io/c3f4982 
30.75 ms