tx · 5fTyf5jEGugEawj1YEF3jMMpfzXecam3WLWwAia2XP6v 3MzfaHTFgjznN8zniycq5PZxaenTjwcYLXf: -0.01000000 Waves 2022.02.04 18:23 [1909053] smart account 3MzfaHTFgjznN8zniycq5PZxaenTjwcYLXf > SELF 0.00000000 Waves
{ "type": 13, "id": "5fTyf5jEGugEawj1YEF3jMMpfzXecam3WLWwAia2XP6v", "fee": 1000000, "feeAssetId": null, "timestamp": 1643988235984, "version": 2, "chainId": 84, "sender": "3MzfaHTFgjznN8zniycq5PZxaenTjwcYLXf", "senderPublicKey": "5ate1da9rhtGuHpuEAd28pTGh1GpM8SUthHy4JD2hPeL", "proofs": [ "46S7hcA5SaAVEGVS3EoXShQRAD2DhHiLYsf8EsFv1tZUek13fppP2rWeQF8B9BpWiiUX7YxDACkHvitjgcEMSpdv" ], "script": "base64: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", "height": 1909053, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 4AWG8csNWjarix7SEaPgPnNzBCZ1bVxvM616JsnFUjjK Next: none Diff:
Old | New | Differences | |
---|---|---|---|
73 | 73 | ||
74 | 74 | @Callable(i) | |
75 | 75 | func faireAppelEleve () = { | |
76 | - | let adresses = ["3N5RAMPJE4xs7mfEqKaHmhuWgVjXbK6dfGc_ | |
76 | + | let adresses = ["3N5RAMPJE4xs7mfEqKaHmhuWgVjXbK6dfGc_absent", "3NBK2yEvvn5RyuLiDoSegDnLmrCMdMBGj9c_absent"] | |
77 | 77 | let e = adresses[0] | |
78 | 78 | let list = removeByIndex(adresses, 0) | |
79 | 79 | let studentAddress = addressFromStringValue(take(e, 35)) |
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 | 26 | let res = invoke(studentAddress, "validationPresence", [studentStatus, getStringValue(nodeValidatrice)], nil) | |
27 | 27 | if ((res == res)) | |
28 | 28 | then match res { | |
29 | 29 | case t: Int => | |
30 | 30 | t | |
31 | 31 | case _ => | |
32 | 32 | throw("Incorrect invoke result") | |
33 | 33 | } | |
34 | 34 | else throw("Strict value is not equal to itself.") | |
35 | 35 | } | |
36 | 36 | ||
37 | 37 | ||
38 | 38 | @Callable(i) | |
39 | 39 | func createOrModifyClass (nom,eleves) = [StringEntry(getClassName(nom, i.caller), eleves)] | |
40 | 40 | ||
41 | 41 | ||
42 | 42 | ||
43 | 43 | @Callable(i) | |
44 | 44 | func deleteClass (nom) = [DeleteEntry(getClassName(nom, i.caller))] | |
45 | 45 | ||
46 | 46 | ||
47 | 47 | ||
48 | 48 | @Callable(i) | |
49 | 49 | func ajouterValidateur (address) = [StringEntry(nodeValidatrice, address)] | |
50 | 50 | ||
51 | 51 | ||
52 | 52 | ||
53 | 53 | @Callable(i) | |
54 | 54 | func faireAppel (classe,eleves) = { | |
55 | 55 | let leasedEtudiants = { | |
56 | 56 | let $l = eleves | |
57 | 57 | let $s = size($l) | |
58 | 58 | let $acc0 = nil | |
59 | 59 | func $f0_1 ($a,$i) = if (($i >= $s)) | |
60 | 60 | then $a | |
61 | 61 | else validerEleve($a, $l[$i]) | |
62 | 62 | ||
63 | 63 | func $f0_2 ($a,$i) = if (($i >= $s)) | |
64 | 64 | then $a | |
65 | 65 | else throw("List size exceeds 30") | |
66 | 66 | ||
67 | 67 | $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) | |
68 | 68 | } | |
69 | 69 | [StringEntry(classeEnCours, getClassName(classe, i.caller)), BooleanEntry(estEnCours, true)] | |
70 | 70 | } | |
71 | 71 | ||
72 | 72 | ||
73 | 73 | ||
74 | 74 | @Callable(i) | |
75 | 75 | func faireAppelEleve () = { | |
76 | - | let adresses = ["3N5RAMPJE4xs7mfEqKaHmhuWgVjXbK6dfGc_ | |
76 | + | let adresses = ["3N5RAMPJE4xs7mfEqKaHmhuWgVjXbK6dfGc_absent", "3NBK2yEvvn5RyuLiDoSegDnLmrCMdMBGj9c_absent"] | |
77 | 77 | let e = adresses[0] | |
78 | 78 | let list = removeByIndex(adresses, 0) | |
79 | 79 | let studentAddress = addressFromStringValue(take(e, 35)) | |
80 | 80 | let studentStatus = takeRight(e, (size(e) - 36)) | |
81 | 81 | let res = invoke(studentAddress, "validationPresence", [studentStatus, getStringValue(nodeValidatrice), list], nil) | |
82 | 82 | if ((res == res)) | |
83 | 83 | then match res { | |
84 | 84 | case t: Int => | |
85 | 85 | nil | |
86 | 86 | case _ => | |
87 | 87 | throw("Incorrect invoke result") | |
88 | 88 | } | |
89 | 89 | else throw("Strict value is not equal to itself.") | |
90 | 90 | } | |
91 | 91 | ||
92 | 92 | ||
93 | 93 | ||
94 | 94 | @Callable(i) | |
95 | 95 | func arreterCours () = [StringEntry(classeEnCours, ""), BooleanEntry(estEnCours, false)] | |
96 | 96 | ||
97 | 97 |
github/deemru/w8io/169f3d6 29.27 ms ◑