tx · 4ac5VfwVPjEVwNMi1dTkzUeHSN1U82ZoBPeNm53C4iPt 3NA7Sj3H19s36N4JbUj5Mdg5vU2sF7YWct1: -0.01400000 Waves 2021.01.04 16:47 [1338731] smart account 3NA7Sj3H19s36N4JbUj5Mdg5vU2sF7YWct1 > SELF 0.00000000 Waves
{ "type": 13, "id": "4ac5VfwVPjEVwNMi1dTkzUeHSN1U82ZoBPeNm53C4iPt", "fee": 1400000, "feeAssetId": null, "timestamp": 1609768055000, "version": 2, "chainId": 84, "sender": "3NA7Sj3H19s36N4JbUj5Mdg5vU2sF7YWct1", "senderPublicKey": "AKTiQWikcdx1dyZiLDjZmGQDqprqTz9FZu5MtV3HMLkL", "proofs": [ "5KrdeSX3c65CrPC4wCXwWUNX6wG64uuoi5mNTX6xi3bWR3wpGfdj4uf2wamWfZ5JMRGCGJhdktA2kujmUzcJETHE", "52sHv2Z2dZYX11FuucRQzhk2hiA76iPHBuNVChLsuiy285vX6Uf4RVgUY15G1VeHffn3VZnhkNsDiMrUbvyJa1aF" ], "script": "base64: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", "height": 1338731, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: Eswkb182V3ESwjXup1XxurL1Hbjm3a92bHKvZvaWnZDh Next: DZUA2PtDfJgqxu3rNqUWgn6REjWmt2RBAQhiFa8aiubX Diff:
Old | New | Differences | |
---|---|---|---|
10 | 10 | let KYCVer2 = 2 | |
11 | 11 | let KYCVer3 = 3 | |
12 | 12 | let isMerchant = 5 | |
13 | + | let isOk = 7 | |
13 | 14 | match tx { | |
14 | 15 | case w: TransferTransaction => | |
15 | 16 | let data = getInteger(gateway, toBase58String(w.sender.bytes)) |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 3 #-} | |
2 | 2 | {-# CONTENT_TYPE EXPRESSION #-} | |
3 | 3 | let digiliraPay = base58'57EFni8M1XesEurFh3c4jnpLExP2PCPd5TRrwMjePAT4' | |
4 | 4 | let gateway = Address(base58'3NCpyPuNzUaB7LFS4KBzwzWVnXmjur582oy') | |
5 | 5 | let sponsorToken = base58'7GnHzTaDe3YbDiCD9rueHiSfPB7hdanPpN4Ab79fJGtD' | |
6 | 6 | let paymentToken = base58'FLsa9hfu1jvXC6jhDP2x6DHHQHK2qiKPtS7D74ZFNsE1' | |
7 | 7 | let banned = 403 | |
8 | 8 | let KYCPending = 0 | |
9 | 9 | let KYCVer1 = 1 | |
10 | 10 | let KYCVer2 = 2 | |
11 | 11 | let KYCVer3 = 3 | |
12 | 12 | let isMerchant = 5 | |
13 | + | let isOk = 7 | |
13 | 14 | match tx { | |
14 | 15 | case w: TransferTransaction => | |
15 | 16 | let data = getInteger(gateway, toBase58String(w.sender.bytes)) | |
16 | 17 | let isUser = getInteger(gateway, toBase58String(addressFromRecipient(w.recipient).bytes)) | |
17 | 18 | let feeToken = w.feeAssetId | |
18 | 19 | if (isDefined(isUser)) | |
19 | 20 | then if (isDefined(feeToken)) | |
20 | 21 | then if ((feeToken == sponsorToken)) | |
21 | 22 | then true | |
22 | 23 | else if ((feeToken == paymentToken)) | |
23 | 24 | then if ((w.recipient == addressFromPublicKey(digiliraPay))) | |
24 | 25 | then true | |
25 | 26 | else throw("Unfortunately you can only use this token for payments") | |
26 | 27 | else true | |
27 | 28 | else true | |
28 | 29 | else if (isDefined(feeToken)) | |
29 | 30 | then if ((feeToken == sponsorToken)) | |
30 | 31 | then throw("Cannot use this token for none DigiliraPay users transfers.") | |
31 | 32 | else if ((feeToken == paymentToken)) | |
32 | 33 | then throw("Cannot use this token for none payment transfers.") | |
33 | 34 | else true | |
34 | 35 | else true | |
35 | 36 | case x: Order|LeaseTransaction|BurnTransaction => | |
36 | 37 | false | |
37 | 38 | case t: DataTransaction|ExchangeTransaction|SetScriptTransaction => | |
38 | 39 | sigVerify(t.bodyBytes, t.proofs[1], digiliraPay) | |
39 | 40 | case mtt: MassTransferTransaction => | |
40 | 41 | let firstRecipient = mtt.transfers[0].recipient | |
41 | 42 | let firstAmount = mtt.transfers[0].amount | |
42 | 43 | let assetId = extract(mtt.assetId) | |
43 | 44 | false | |
44 | 45 | case _ => | |
45 | 46 | true | |
46 | 47 | } |
github/deemru/w8io/169f3d6 37.26 ms ◑