tx · 7QajGXDQd1qHNoV1y44SdsRvFGUVHbA3KXPjBtB1xWDW 3N97CrmNgVYKLTvy2rkCjpso4DKUWMzx9Ks: -0.04000000 Waves 2019.11.07 14:10 [754441] smart account 3N97CrmNgVYKLTvy2rkCjpso4DKUWMzx9Ks > SELF 0.00000000 Waves
{ "type": 13, "id": "7QajGXDQd1qHNoV1y44SdsRvFGUVHbA3KXPjBtB1xWDW", "fee": 4000000, "feeAssetId": null, "timestamp": 1573125067285, "version": 1, "sender": "3N97CrmNgVYKLTvy2rkCjpso4DKUWMzx9Ks", "senderPublicKey": "8swaUeiSdyHSGTmWH4A8N8DsTMP8otk5DjQ1D8Kzrjr6", "proofs": [ "4EvesxaC1mLypf1TiRaqZPGJY4nZbijX1kX5fdURDGxpCMKipTB8PeEHqnLqYnwtRC3n8KJdKVTtcBsVAAZvJbgx" ], "script": "base64:AAIDAAAAAAAAAAgIARIECgIIAQAAAAAAAAABAAAAAWkBAAAACWJ1eVRpY2tldAAAAAIAAAAIdGlja2V0SWQAAAAGYW1vdW50BAAAAAdwYXltZW50CQEAAAAFdmFsdWUAAAABCAUAAAABaQAAAAdwYXltZW50BAAAAAx0aWNrZXRJbmZvT3AJAAPsAAAAAQkAAlkAAAABBQAAAAh0aWNrZXRJZAQAAAAKdGlja2V0SW5mbwkBAAAABXZhbHVlAAAAAQUAAAAMdGlja2V0SW5mb09wBAAAAAtzdGFydEhlaWdodAQAAAAHJG1hdGNoMAkABBoAAAACCAUAAAAKdGlja2V0SW5mbwAAAAZpc3N1ZXICAAAABXN0YXJ0AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAARVbml0BAAAAAF4BQAAAAckbWF0Y2gwAAAAAAAAAAAAAwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAANJbnQEAAAAAXgFAAAAByRtYXRjaDAFAAAAAXgJAQAAAAV0aHJvdwAAAAAEAAAACnN0b3BIZWlnaHQEAAAAByRtYXRjaDAJAAQaAAAAAggFAAAACnRpY2tldEluZm8AAAAGaXNzdWVyAgAAAANlbmQDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABFVuaXQEAAAAAXgFAAAAByRtYXRjaDAAAAAAAAAAAAADCQAAAQAAAAIFAAAAByRtYXRjaDACAAAAA0ludAQAAAABeAUAAAAHJG1hdGNoMAUAAAABeAkBAAAABXRocm93AAAAAAMJAQAAAAlpc0RlZmluZWQAAAABCAUAAAAHcGF5bWVudAAAAAdhc3NldElkCQAAAgAAAAECAAAAEm9ubHkgd2F2ZXMgZm9yIG5vdwMDCQAAZgAAAAIJAABkAAAAAgUAAAALc3RhcnRIZWlnaHQFAAAACnN0b3BIZWlnaHQAAAAAAAAAAAADCQAAZgAAAAIFAAAAC3N0YXJ0SGVpZ2h0BQAAAAZoZWlnaHQGCQAAZgAAAAIFAAAABmhlaWdodAUAAAAKc3RvcEhlaWdodAcJAAACAAAAAQkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAoeW91IGNhbiBvbmx5IGJ5IGEgdGlja2V0IGJldHdlZW4gYmxvY2s6IAkAAaQAAAABBQAAAAtzdGFydEhlaWdodAIAAAAFIGFuZCAJAAGkAAAAAQUAAAAKc3RvcEhlaWdodAQAAAAFcHJpY2UJAQAAABFAZXh0ck5hdGl2ZSgxMDUwKQAAAAIIBQAAAAp0aWNrZXRJbmZvAAAABmlzc3VlcgIAAAAFcHJpY2UDCQEAAAACIT0AAAACCQAAaAAAAAIFAAAABXByaWNlBQAAAAZhbW91bnQIBQAAAAdwYXltZW50AAAABmFtb3VudAkAAAIAAAABCQABLAAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgIAAAAlTm90IHRoZSBjb3JyZWN0IHByaWNlLiBUaGUgcHJpY2UgZm9yIAkAAaQAAAABBQAAAAZhbW91bnQCAAAACyB0aWNrZXRzID0gCQABpAAAAAEJAABoAAAAAgUAAAAFcHJpY2UFAAAABmFtb3VudAIAAAASLiBZb3UgYXJlIHBheWluZzogCQABpAAAAAEIBQAAAAdwYXltZW50AAAABmFtb3VudAkBAAAAC1RyYW5zZmVyU2V0AAAAAQkABEwAAAACCQEAAAAOU2NyaXB0VHJhbnNmZXIAAAADCAUAAAABaQAAAAZjYWxsZXIFAAAABmFtb3VudAkAAlkAAAABBQAAAAh0aWNrZXRJZAUAAAADbmlsAAAAAOOLlyA=", "chainId": 84, "height": 754441, "spentComplexity": 0 } View: original | compacted Prev: BJyk8W6aw94fcaPQefECgG7PUTpzDiKk2mz2qaVZZYM9 Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | ||
5 | 5 | ||
6 | 6 | @Callable(i) | |
7 | 7 | func buyTicket (ticketId,amount) = { | |
8 | 8 | let payment = value(i.payment) | |
9 | 9 | let ticketInfoOp = assetInfo(fromBase58String(ticketId)) | |
10 | 10 | let ticketInfo = value(ticketInfoOp) | |
11 | 11 | let startHeight = match getInteger(ticketInfo.issuer, "start") { | |
12 | 12 | case x: Unit => | |
13 | 13 | 0 | |
14 | 14 | case x: Int => | |
15 | 15 | x | |
16 | 16 | case _ => | |
17 | 17 | throw() | |
18 | 18 | } | |
19 | 19 | let stopHeight = match getInteger(ticketInfo.issuer, "end") { | |
20 | 20 | case x: Unit => | |
21 | 21 | 0 | |
22 | 22 | case x: Int => | |
23 | 23 | x | |
24 | 24 | case _ => | |
25 | 25 | throw() | |
26 | 26 | } | |
27 | 27 | if (isDefined(payment.assetId)) | |
28 | 28 | then throw("only waves for now") | |
29 | 29 | else if (if (((startHeight + stopHeight) > 0)) | |
30 | 30 | then if ((startHeight > height)) | |
31 | 31 | then true | |
32 | 32 | else (height > stopHeight) | |
33 | 33 | else false) | |
34 | 34 | then throw(((("you can only by a ticket between block: " + toString(startHeight)) + " and ") + toString(stopHeight))) | |
35 | 35 | else { | |
36 | 36 | let price = getIntegerValue(ticketInfo.issuer, "price") | |
37 | 37 | if (((price * amount) != payment.amount)) | |
38 | 38 | then throw(((((("Not the correct price. The price for " + toString(amount)) + " tickets = ") + toString((price * amount))) + ". You are paying: ") + toString(payment.amount))) | |
39 | 39 | else TransferSet([ScriptTransfer(i.caller, amount, fromBase58String(ticketId))]) | |
40 | 40 | } | |
41 | 41 | } | |
42 | 42 | ||
43 | 43 |
github/deemru/w8io/169f3d6 29.63 ms ◑![]()