tx · 3pTmTunKWVJMBpnieZevTcA3KTuLkZL9RT9G4g4ZV5nD

3N4zgeML2gUD4hY5YT1anEEUydY3wmwkmAt:  -0.00600000 Waves

2024.03.22 18:28 [3029423] smart account 3N4zgeML2gUD4hY5YT1anEEUydY3wmwkmAt > SELF 0.00000000 Waves

{ "type": 13, "id": "3pTmTunKWVJMBpnieZevTcA3KTuLkZL9RT9G4g4ZV5nD", "fee": 600000, "feeAssetId": null, "timestamp": 1711121399869, "version": 2, "chainId": 84, "sender": "3N4zgeML2gUD4hY5YT1anEEUydY3wmwkmAt", "senderPublicKey": "GADFXE9mT3cuWvKju1WvzXoEWhkXAvvC8H3VzP9RXhRS", "proofs": [ "3Ae8zVtsSRoDd1344cVK22facRfDT7sPT7pkXtbw8SK8MTYyc5tRU4s9quWAoZCU7JCbnUFKnDp8kNWuiv51aNEz" ], "script": "base64:AAIFAAAAAAAAAA0IAhIECgIICBIDCgEBAAAAAgEAAAAHZ2V0RGF0YQAAAAIAAAADYWRyAAAAA2tleQQAAAAEZGF0YQQAAAAHJG1hdGNoMAkABB0AAAACBQAAAANhZHIFAAAAA2tleQMJAAABAAAAAgUAAAAHJG1hdGNoMAIAAAAGU3RyaW5nBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhAgAAAAAFAAAABGRhdGEBAAAACGF1dGhVc2VyAAAAAQAAAAFpAwkAAAAAAAACCAUAAAABaQAAAAZjYWxsZXIFAAAABHRoaXMGBAAAAA1jYWxsZXJBZGRyZXNzCQAEJQAAAAEIBQAAAAFpAAAABmNhbGxlcgQAAAAJZGF0YVZhbHVlCQEAAAAHZ2V0RGF0YQAAAAIFAAAABHRoaXMJAAEsAAAAAgIAAAALY29ubmVjdGlvbi4FAAAADWNhbGxlckFkZHJlc3MEAAAADWV4cGVjdGVkVmFsdWUCAAAACmF1dGhvcml6ZWQDCQAAAAAAAAIFAAAACWRhdGFWYWx1ZQUAAAANZXhwZWN0ZWRWYWx1ZQYHAAAAAgAAAAFpAQAAABtzYXZlU2luZ2xlS2V5VmFsdWVPbkFjY291bnQAAAACAAAAA2tleQAAAAhrZXlWYWx1ZQMJAAAAAAAAAggFAAAAAWkAAAAGY2FsbGVyBQAAAAR0aGlzCQAETAAAAAIJAQAAAAtTdHJpbmdFbnRyeQAAAAIFAAAAA2tleQUAAAAIa2V5VmFsdWUFAAAAA25pbAkAAAIAAAABAgAAAD1BY2NvdW50IGhhdCBuaWNodCBkaWUgbsO2dGlnZSBCZXJlY2h0aWd1bmcgZsO8ciBkaWVzZSBBa3Rpb24uAAAAAWkBAAAAC3JlZnVuZFdhdmVzAAAAAQAAAARjb3N0BAAAAA1hdXRoZW50aWNhdGVkCQEAAAAIYXV0aFVzZXIAAAABBQAAAAFpAwkBAAAAASEAAAABBQAAAA1hdXRoZW50aWNhdGVkCQAAAgAAAAECAAAAPUFjY291bnQgaGF0IG5pY2h0IGRpZSBuw7Z0aWdlIEJlcmVjaHRpZ3VuZyBmw7xyIGRpZXNlIEFrdGlvbi4JAARMAAAAAgkBAAAADlNjcmlwdFRyYW5zZmVyAAAAAwgFAAAAAWkAAAAGY2FsbGVyBQAAAARjb3N0BQAAAAR1bml0BQAAAANuaWwAAAABAAAAAnR4AQAAAAZ2ZXJpZnkAAAAACQAB9AAAAAMIBQAAAAJ0eAAAAAlib2R5Qnl0ZXMJAAGRAAAAAggFAAAAAnR4AAAABnByb29mcwAAAAAAAAAAAAgFAAAAAnR4AAAAD3NlbmRlclB1YmxpY0tlecApsso=", "height": 3029423, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: A3wUFb8HteUt5wzYgKx2aZorEeN4PQQumhNYiizzFzy4 Next: none Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4+func getData (adr,key) = {
5+ let data = match getString(adr, key) {
6+ case a: String =>
7+ a
8+ case _ =>
9+ ""
10+ }
11+ data
12+ }
13+
14+
15+func authUser (i) = if ((i.caller == this))
16+ then true
17+ else {
18+ let callerAddress = toString(i.caller)
19+ let dataValue = getData(this, ("connection." + callerAddress))
20+ let expectedValue = "authorized"
21+ if ((dataValue == expectedValue))
22+ then true
23+ else false
24+ }
25+
26+
27+@Callable(i)
28+func saveSingleKeyValueOnAccount (key,keyValue) = if ((i.caller == this))
29+ then [StringEntry(key, keyValue)]
30+ else throw("Account hat nicht die nötige Berechtigung für diese Aktion.")
31+
432
533
634 @Callable(i)
735 func refundWaves (cost) = {
8- let authenticated = true
36+ let authenticated = authUser(i)
937 if (!(authenticated))
1038 then throw("Account hat nicht die nötige Berechtigung für diese Aktion.")
1139 else [ScriptTransfer(i.caller, cost, unit)]
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 5 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4+func getData (adr,key) = {
5+ let data = match getString(adr, key) {
6+ case a: String =>
7+ a
8+ case _ =>
9+ ""
10+ }
11+ data
12+ }
13+
14+
15+func authUser (i) = if ((i.caller == this))
16+ then true
17+ else {
18+ let callerAddress = toString(i.caller)
19+ let dataValue = getData(this, ("connection." + callerAddress))
20+ let expectedValue = "authorized"
21+ if ((dataValue == expectedValue))
22+ then true
23+ else false
24+ }
25+
26+
27+@Callable(i)
28+func saveSingleKeyValueOnAccount (key,keyValue) = if ((i.caller == this))
29+ then [StringEntry(key, keyValue)]
30+ else throw("Account hat nicht die nötige Berechtigung für diese Aktion.")
31+
432
533
634 @Callable(i)
735 func refundWaves (cost) = {
8- let authenticated = true
36+ let authenticated = authUser(i)
937 if (!(authenticated))
1038 then throw("Account hat nicht die nötige Berechtigung für diese Aktion.")
1139 else [ScriptTransfer(i.caller, cost, unit)]
1240 }
1341
1442
1543 @Verifier(tx)
1644 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
1745

github/deemru/w8io/6500d08 
17.78 ms