tx · J1cHcUs86eUiuDbX1SehqrPzsERJShxfWi7PGWcQvwC9 3MzfaHTFgjznN8zniycq5PZxaenTjwcYLXf: -0.01000000 Waves 2022.02.03 23:58 [1907940] smart account 3MzfaHTFgjznN8zniycq5PZxaenTjwcYLXf > SELF 0.00000000 Waves
{ "type": 13, "id": "J1cHcUs86eUiuDbX1SehqrPzsERJShxfWi7PGWcQvwC9", "fee": 1000000, "feeAssetId": null, "timestamp": 1643921907843, "version": 2, "chainId": 84, "sender": "3MzfaHTFgjznN8zniycq5PZxaenTjwcYLXf", "senderPublicKey": "5ate1da9rhtGuHpuEAd28pTGh1GpM8SUthHy4JD2hPeL", "proofs": [ "FfBDkiEeKzGmsmss815ja64vLiYPYRTZ7qZfBcEXsLcVCndcwfsXqNCVpsLVmC7kXqXy48GNvAYw2xgV28hXj92" ], "script": "base64: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", "height": 1907940, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9cmKu61tee2bVzgM1W7J4Fqapk1dP6qTw9yvCoodFQsM Next: EUh9Qx5FboNKj7Y3uHWj7pChHc73nWJmu7JZEmvi2Fz4 Diff:
Old | New | Differences | |
---|---|---|---|
23 | 23 | func testValid (e) = { | |
24 | 24 | let studentAddress = addressFromStringValue(take(e, 35)) | |
25 | 25 | let studentStatus = takeRight(e, (size(e) - 36)) | |
26 | - | studentStatus | |
26 | + | let res = invoke(studentAddress, "validationPresence", [studentStatus, getStringValue(nodeValidatrice)], nil) | |
27 | + | if ((res == res)) | |
28 | + | then unit | |
29 | + | else throw("Strict value is not equal to itself.") | |
27 | 30 | } | |
28 | 31 | ||
29 | 32 | ||
64 | 67 | ||
65 | 68 | ||
66 | 69 | @Callable(i) | |
67 | - | func faireAppelEleve () = [StringEntry("etudiants_address", testValid("3N7at66kMSR66wPkY8pvnAcRg711XKkRmW7_présent")), IntegerEntry("balance_available", wavesBalance(this).available)] | |
70 | + | func faireAppelEleve () = { | |
71 | + | let eleve = testValid("3N7at66kMSR66wPkY8pvnAcRg711XKkRmW7_présent") | |
72 | + | [IntegerEntry("balance_available", wavesBalance(this).available)] | |
73 | + | } | |
68 | 74 | ||
69 | 75 | ||
70 | 76 |
Old | New | Differences | |
---|---|---|---|
1 | 1 | {-# STDLIB_VERSION 5 #-} | |
2 | 2 | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | 3 | {-# CONTENT_TYPE DAPP #-} | |
4 | 4 | let estEnCours = "estEnCours" | |
5 | 5 | ||
6 | 6 | let classeEnCours = "classeEnCours" | |
7 | 7 | ||
8 | 8 | let nodeValidatrice = "validatorNode" | |
9 | 9 | ||
10 | 10 | func getClassName (nom,professeur) = ((nom + "_") + toString(professeur)) | |
11 | 11 | ||
12 | 12 | ||
13 | 13 | func validerEleve (acc,e) = { | |
14 | 14 | let studentAddress = addressFromStringValue(take(e, 35)) | |
15 | 15 | let studentStatus = takeRight(e, (size(e) - 34)) | |
16 | 16 | let res = invoke(studentAddress, "validationPresence", [studentStatus, getStringValue(nodeValidatrice)], nil) | |
17 | 17 | if ((res == res)) | |
18 | 18 | then true | |
19 | 19 | else throw("Strict value is not equal to itself.") | |
20 | 20 | } | |
21 | 21 | ||
22 | 22 | ||
23 | 23 | func testValid (e) = { | |
24 | 24 | let studentAddress = addressFromStringValue(take(e, 35)) | |
25 | 25 | let studentStatus = takeRight(e, (size(e) - 36)) | |
26 | - | studentStatus | |
26 | + | let res = invoke(studentAddress, "validationPresence", [studentStatus, getStringValue(nodeValidatrice)], nil) | |
27 | + | if ((res == res)) | |
28 | + | then unit | |
29 | + | else throw("Strict value is not equal to itself.") | |
27 | 30 | } | |
28 | 31 | ||
29 | 32 | ||
30 | 33 | @Callable(i) | |
31 | 34 | func createOrModifyClass (nom,eleves) = [StringEntry(getClassName(nom, i.caller), eleves)] | |
32 | 35 | ||
33 | 36 | ||
34 | 37 | ||
35 | 38 | @Callable(i) | |
36 | 39 | func deleteClass (nom) = [DeleteEntry(getClassName(nom, i.caller))] | |
37 | 40 | ||
38 | 41 | ||
39 | 42 | ||
40 | 43 | @Callable(i) | |
41 | 44 | func ajouterValidateur (address) = [StringEntry(nodeValidatrice, address)] | |
42 | 45 | ||
43 | 46 | ||
44 | 47 | ||
45 | 48 | @Callable(i) | |
46 | 49 | func faireAppel (classe,eleves) = { | |
47 | 50 | let leasedEtudiants = { | |
48 | 51 | let $l = eleves | |
49 | 52 | let $s = size($l) | |
50 | 53 | let $acc0 = nil | |
51 | 54 | func $f0_1 ($a,$i) = if (($i >= $s)) | |
52 | 55 | then $a | |
53 | 56 | else validerEleve($a, $l[$i]) | |
54 | 57 | ||
55 | 58 | func $f0_2 ($a,$i) = if (($i >= $s)) | |
56 | 59 | then $a | |
57 | 60 | else throw("List size exceeds 30") | |
58 | 61 | ||
59 | 62 | $f0_2($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($f0_1($acc0, 0), 1), 2), 3), 4), 5), 6), 7), 8), 9), 10), 11), 12), 13), 14), 15), 16), 17), 18), 19), 20), 21), 22), 23), 24), 25), 26), 27), 28), 29), 30) | |
60 | 63 | } | |
61 | 64 | [StringEntry(classeEnCours, getClassName(classe, i.caller)), BooleanEntry(estEnCours, true)] | |
62 | 65 | } | |
63 | 66 | ||
64 | 67 | ||
65 | 68 | ||
66 | 69 | @Callable(i) | |
67 | - | func faireAppelEleve () = [StringEntry("etudiants_address", testValid("3N7at66kMSR66wPkY8pvnAcRg711XKkRmW7_présent")), IntegerEntry("balance_available", wavesBalance(this).available)] | |
70 | + | func faireAppelEleve () = { | |
71 | + | let eleve = testValid("3N7at66kMSR66wPkY8pvnAcRg711XKkRmW7_présent") | |
72 | + | [IntegerEntry("balance_available", wavesBalance(this).available)] | |
73 | + | } | |
68 | 74 | ||
69 | 75 | ||
70 | 76 | ||
71 | 77 | @Callable(i) | |
72 | 78 | func arreterCours () = [StringEntry(classeEnCours, ""), BooleanEntry(estEnCours, false)] | |
73 | 79 | ||
74 | 80 |
github/deemru/w8io/169f3d6 37.80 ms ◑![]()