tx · H9vUbtu55GSMP5oEypHq7LaY1N6JMGZH5rkq7yiHV3HM 3N5m7SgcmMBygBnNTB1DH7EKZdKUMSiTFAt: -0.01000000 Waves 2021.03.30 14:23 [1460432] smart account 3N5m7SgcmMBygBnNTB1DH7EKZdKUMSiTFAt > SELF 0.00000000 Waves
{ "type": 13, "id": "H9vUbtu55GSMP5oEypHq7LaY1N6JMGZH5rkq7yiHV3HM", "fee": 1000000, "feeAssetId": null, "timestamp": 1617103422804, "version": 1, "sender": "3N5m7SgcmMBygBnNTB1DH7EKZdKUMSiTFAt", "senderPublicKey": "CjgpUcV9oEv5fSWU1QspEbJmsiw3h5D12UPGuzviExnt", "proofs": [ "59k8P9LthWniSaLpLSBB5qJ9GSRNckguP9ddcgXHQavnhmhPu2s8acGq9G4w2YpYCLnT48txe79HZfvrxPidEzci" ], "script": "base64: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AAt2b3RpbmdTdGF0ZQkBAAAADXRyeUdldEludGVnZXIAAAABBQAAAAl2b3RpbmdLZXkEAAAADnZvdGVzQW1vdW50S2V5CQABLAAAAAIJAAEsAAAAAgIAAAAGdGFza3NfBQAAAAZ0YXNrSWQCAAAADl92b3RpbmdfYW1vdW50BAAAABB2b3Rlc0Ftb3VudFN0YXRlCQAAZAAAAAIJAQAAAA10cnlHZXRJbnRlZ2VyAAAAAQUAAAAJdm90aW5nS2V5AAAAAAAAAAABBAAAAAx2b3RlVmFsdWVJbnQJAQAAAAxnZXRWb3RlVmFsdWUAAAABBQAAAAl2b3RlVmFsdWUEAAAADm5ld1ZvdGluZ1N0YXRlCQAAZAAAAAIFAAAAC3ZvdGluZ1N0YXRlBQAAAAx2b3RlVmFsdWVJbnQJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAACXZvdGluZ0tleQUAAAAObmV3Vm90aW5nU3RhdGUJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIFAAAAB3ZvdGVLZXkFAAAADHZvdGVWYWx1ZUludAkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgUAAAAOdm90ZXNBbW91bnRLZXkFAAAAEHZvdGVzQW1vdW50U3RhdGUFAAAAA25pbAkAAAIAAAABAgAAABVjaGVja3MgYXJlIG5vdCBwYXNzZWQAAAABaQEAAAAYZmluaXNoVGFza1Byb3Bvc2FsVm90aW5nAAAAAQAAAAZ0YXNrSWQDCQEAAAAiZmluaXNoVGFza1Byb3Bvc2FsVm90aW5nQ29uZGl0aW9ucwAAAAIIBQAAAAFpAAAABmNhbGxlcgUAAAAGdGFza0lkBAAAAAl2b3RpbmdLZXkJAAEsAAAAAgkAASwAAAACAgAAAAZ0YXNrc18FAAAABnRhc2tJZAIAAAANX3ZvdGluZ19zdGF0ZQkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQABLAAAAAICAAAABnRhc2tzXwUAAAAGdGFza0lkAgAAAAdfc3RhdHVzAwkAAGYAAAACCQEAAAANdHJ5R2V0SW50ZWdlcgAAAAEFAAAACXZvdGluZ0tleQAAAAAAAAAAAAIA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", "chainId": 84, "height": 1460432, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
Old | New | Differences | |
---|---|---|---|
1 | - | # no script | |
1 | + | {-# STDLIB_VERSION 3 #-} | |
2 | + | {-# SCRIPT_TYPE ACCOUNT #-} | |
3 | + | {-# CONTENT_TYPE DAPP #-} | |
4 | + | let a = addressFromStringValue("3N34V5ita42EWyEkpgc8XHbZG6LWtM8t4n7") | |
5 | + | ||
6 | + | let b = 1 | |
7 | + | ||
8 | + | func c (d) = { | |
9 | + | let e = { | |
10 | + | let f = getInteger(this, d) | |
11 | + | if ($isInstanceOf(f, "Int")) | |
12 | + | then { | |
13 | + | let g = f | |
14 | + | g | |
15 | + | } | |
16 | + | else 0 | |
17 | + | } | |
18 | + | e | |
19 | + | } | |
20 | + | ||
21 | + | ||
22 | + | func h (d) = { | |
23 | + | let e = { | |
24 | + | let f = getString(this, d) | |
25 | + | if ($isInstanceOf(f, "String")) | |
26 | + | then { | |
27 | + | let g = f | |
28 | + | g | |
29 | + | } | |
30 | + | else "" | |
31 | + | } | |
32 | + | e | |
33 | + | } | |
34 | + | ||
35 | + | ||
36 | + | func i (j) = (j == this) | |
37 | + | ||
38 | + | ||
39 | + | func k () = { | |
40 | + | let e = { | |
41 | + | let f = getString(a, "working_group_members") | |
42 | + | if ($isInstanceOf(f, "String")) | |
43 | + | then { | |
44 | + | let g = f | |
45 | + | g | |
46 | + | } | |
47 | + | else "" | |
48 | + | } | |
49 | + | e | |
50 | + | } | |
51 | + | ||
52 | + | ||
53 | + | func l () = { | |
54 | + | let e = { | |
55 | + | let f = getString(a, "dao_members") | |
56 | + | if ($isInstanceOf(f, "String")) | |
57 | + | then { | |
58 | + | let g = f | |
59 | + | g | |
60 | + | } | |
61 | + | else "" | |
62 | + | } | |
63 | + | e | |
64 | + | } | |
65 | + | ||
66 | + | ||
67 | + | func m () = { | |
68 | + | let e = { | |
69 | + | let f = getInteger(a, "dao_size") | |
70 | + | if ($isInstanceOf(f, "Int")) | |
71 | + | then { | |
72 | + | let g = f | |
73 | + | g | |
74 | + | } | |
75 | + | else 0 | |
76 | + | } | |
77 | + | e | |
78 | + | } | |
79 | + | ||
80 | + | ||
81 | + | func n (o) = { | |
82 | + | let e = { | |
83 | + | let f = getInteger(a, (("working_group_member_" + toString(o)) + "_weight")) | |
84 | + | if ($isInstanceOf(f, "Int")) | |
85 | + | then { | |
86 | + | let g = f | |
87 | + | g | |
88 | + | } | |
89 | + | else 0 | |
90 | + | } | |
91 | + | (e > 0) | |
92 | + | } | |
93 | + | ||
94 | + | ||
95 | + | func p (j) = { | |
96 | + | let e = { | |
97 | + | let f = getInteger(a, (("dao_member_" + toString(j)) + "_weight")) | |
98 | + | if ($isInstanceOf(f, "Int")) | |
99 | + | then { | |
100 | + | let g = f | |
101 | + | g | |
102 | + | } | |
103 | + | else 0 | |
104 | + | } | |
105 | + | (e > 0) | |
106 | + | } | |
107 | + | ||
108 | + | ||
109 | + | func q (r) = if ((r == "like")) | |
110 | + | then 1 | |
111 | + | else if ((r == "dislike")) | |
112 | + | then -1 | |
113 | + | else throw("you need to vote with 'like' or 'dislike' value") | |
114 | + | ||
115 | + | ||
116 | + | func s (j) = if (!(n(j))) | |
117 | + | then throw("grants working group access only") | |
118 | + | else true | |
119 | + | ||
120 | + | ||
121 | + | func t (j,u) = if (!(n(j))) | |
122 | + | then throw("grants working group access only") | |
123 | + | else if ((h((("tasks_" + u) + "_status")) != "")) | |
124 | + | then throw("grant isn`t new") | |
125 | + | else true | |
126 | + | ||
127 | + | ||
128 | + | func v (j,u) = if (!(p(j))) | |
129 | + | then throw("you can't vote") | |
130 | + | else if ((h((("tasks_" + u) + "_status")) != "proposed")) | |
131 | + | then throw("voting is closed or not started") | |
132 | + | else if ((c(((("tasks_" + u) + "_voted_") + toString(j))) != 0)) | |
133 | + | then throw("you have already voted") | |
134 | + | else true | |
135 | + | ||
136 | + | ||
137 | + | func w (j,u) = if (!(n(j))) | |
138 | + | then throw("grants working group access only") | |
139 | + | else if ((h((("tasks_" + u) + "_status")) != "proposed")) | |
140 | + | then throw("voting is not active") | |
141 | + | else if ((b > ((c((("tasks_" + u) + "_voting_amount")) * 100) / m()))) | |
142 | + | then throw((("more than " + toString(b)) + "% members have to vote before finishing the voting")) | |
143 | + | else true | |
144 | + | ||
145 | + | ||
146 | + | func x (j,u,y) = if ((h((("tasks_" + u) + "_status")) != "ready_to_apply")) | |
147 | + | then throw("this grant has not yet been approved") | |
148 | + | else if ((h((((("tasks_" + u) + "_app_") + y) + "_leader")) == toString(j))) | |
149 | + | then throw("you are applied") | |
150 | + | else true | |
151 | + | ||
152 | + | ||
153 | + | func z (j,u,y) = { | |
154 | + | let A = (drop(toString(j), 10) + drop(y, 10)) | |
155 | + | if (!(p(j))) | |
156 | + | then throw("you can't vote") | |
157 | + | else if ((h((("tasks_" + u) + "_status")) != "ready_to_apply")) | |
158 | + | then throw("voting is not active") | |
159 | + | else if ((c(((("tasks_" + u) + "_vote_") + A)) != 0)) | |
160 | + | then throw("you have already voted on this team") | |
161 | + | else true | |
162 | + | } | |
163 | + | ||
164 | + | ||
165 | + | func B (j,u,C) = if (!(n(j))) | |
166 | + | then throw("grants working group access only") | |
167 | + | else if ((h((("tasks_" + u) + "_status")) != "ready_to_apply")) | |
168 | + | then throw("voting is not active") | |
169 | + | else if ((size(C) == 0)) | |
170 | + | then throw("no one has yet responded to the grant") | |
171 | + | else true | |
172 | + | ||
173 | + | ||
174 | + | func D (j,u,y) = if ((h((("tasks_" + u) + "_status")) != "team_chosen")) | |
175 | + | then throw("winner is not define") | |
176 | + | else if ((toString(j) != h((((("tasks_" + u) + "_app_") + y) + "_leader")))) | |
177 | + | then throw("team leader only") | |
178 | + | else true | |
179 | + | ||
180 | + | ||
181 | + | func E (j,u) = if (!(n(j))) | |
182 | + | then throw("grants working group access only") | |
183 | + | else true | |
184 | + | ||
185 | + | ||
186 | + | @Callable(F) | |
187 | + | func addTask (G,H,I) = if (s(F.caller)) | |
188 | + | then WriteSet([DataEntry((("tasks_" + toBase58String(F.transactionId)) + "_title"), G), DataEntry((("tasks_" + toBase58String(F.transactionId)) + "_link"), H), DataEntry((("tasks_" + toBase58String(F.transactionId)) + "_hash"), I)]) | |
189 | + | else throw("checks are not passed") | |
190 | + | ||
191 | + | ||
192 | + | ||
193 | + | @Callable(F) | |
194 | + | func resetHash (u,I) = WriteSet([DataEntry((("tasks_" + u) + "_hash"), I)]) | |
195 | + | ||
196 | + | ||
197 | + | ||
198 | + | @Callable(F) | |
199 | + | func hideTask (u) = WriteSet([DataEntry((("tasks_" + u) + "_status"), "hide")]) | |
200 | + | ||
201 | + | ||
202 | + | ||
203 | + | @Callable(F) | |
204 | + | func addReward (u) = if (t(F.caller, u)) | |
205 | + | then { | |
206 | + | let J = extract(F.payment).amount | |
207 | + | WriteSet([DataEntry((("tasks_" + u) + "_reward"), J), DataEntry((("tasks_" + u) + "_status"), "proposed")]) | |
208 | + | } | |
209 | + | else throw("checks are not passed") | |
210 | + | ||
211 | + | ||
212 | + | ||
213 | + | @Callable(F) | |
214 | + | func voteForTaskProposal (u,K) = if (v(F.caller, u)) | |
215 | + | then { | |
216 | + | let L = ((("tasks_" + u) + "_voted_") + toString(F.caller)) | |
217 | + | let M = (("tasks_" + u) + "_voting_state") | |
218 | + | let N = c(M) | |
219 | + | let O = (("tasks_" + u) + "_voting_amount") | |
220 | + | let P = (c(M) + 1) | |
221 | + | let Q = q(K) | |
222 | + | let R = (N + Q) | |
223 | + | WriteSet([DataEntry(M, R), DataEntry(L, Q), DataEntry(O, P)]) | |
224 | + | } | |
225 | + | else throw("checks are not passed") | |
226 | + | ||
227 | + | ||
228 | + | ||
229 | + | @Callable(F) | |
230 | + | func finishTaskProposalVoting (u) = if (w(F.caller, u)) | |
231 | + | then { | |
232 | + | let M = (("tasks_" + u) + "_voting_state") | |
233 | + | WriteSet([DataEntry((("tasks_" + u) + "_status"), if ((c(M) > 0)) | |
234 | + | then "ready_to_apply" | |
235 | + | else "rejected")]) | |
236 | + | } | |
237 | + | else throw("checks are not passed") | |
238 | + | ||
239 | + | ||
240 | + | ||
241 | + | @Callable(F) | |
242 | + | func applyForTask (u,S,H,I) = { | |
243 | + | let y = drop(toString(F.caller), 10) | |
244 | + | if (x(F.caller, u, y)) | |
245 | + | then { | |
246 | + | let T = (("tasks_" + u) + "_applicants") | |
247 | + | let U = h(T) | |
248 | + | let V = ((U + ";") + toString(F.caller)) | |
249 | + | WriteSet([DataEntry((((("tasks_" + u) + "_app_") + y) + "_name"), S), DataEntry((((("tasks_" + u) + "_app_") + y) + "_link"), H), DataEntry((((("tasks_" + u) + "_app_") + y) + "_hash"), I), DataEntry((((("tasks_" + u) + "_app_") + y) + "_leader"), toString(F.caller)), DataEntry((((("tasks_" + u) + "_app_") + y) + "_id"), y), DataEntry(T, V)]) | |
250 | + | } | |
251 | + | else throw("checks are not passed") | |
252 | + | } | |
253 | + | ||
254 | + | ||
255 | + | ||
256 | + | @Callable(F) | |
257 | + | func voteForApplicant (u,y,K) = if (z(F.caller, u, y)) | |
258 | + | then { | |
259 | + | let T = (((("tasks_" + u) + "_app_") + y) + "_voted") | |
260 | + | let V = ((h(T) + ";") + toString(F.caller)) | |
261 | + | let A = (drop(toString(F.caller), 20) + y) | |
262 | + | let L = ((("tasks_" + u) + "_vh_") + A) | |
263 | + | if ((h(L) == toString(F.caller))) | |
264 | + | then throw("you have already voted on this team") | |
265 | + | else { | |
266 | + | let W = (((("tasks_" + u) + "_app_") + y) + "_votes") | |
267 | + | let X = (((("tasks_" + u) + "_app_") + y) + "_score") | |
268 | + | let Y = (1 + c(W)) | |
269 | + | let Z = (q(K) + c(X)) | |
270 | + | WriteSet([DataEntry(T, V), DataEntry(L, toString(F.caller)), DataEntry(W, Y), DataEntry(X, Z)]) | |
271 | + | } | |
272 | + | } | |
273 | + | else throw("checks are not passed") | |
274 | + | ||
275 | + | ||
276 | + | ||
277 | + | @Callable(F) | |
278 | + | func finishApplicantsVoting (u,y) = { | |
279 | + | let aa = h((("tasks_" + u) + "_applicants")) | |
280 | + | let C = split(aa, ";") | |
281 | + | if (B(F.caller, u, C)) | |
282 | + | then WriteSet([DataEntry((("tasks_" + u) + "_status"), "team_chosen"), DataEntry((("tasks_" + u) + "_performer"), y), DataEntry((((("tasks_" + u) + "_app_") + y) + "_process"), "can_begin")]) | |
283 | + | else throw("checks are not passed") | |
284 | + | } | |
285 | + | ||
286 | + | ||
287 | + | ||
288 | + | @Callable(F) | |
289 | + | func startWork (u) = { | |
290 | + | let y = h((("tasks_" + u) + "_performer")) | |
291 | + | if (D(F.caller, u, y)) | |
292 | + | then WriteSet([DataEntry((("tasks_" + u) + "_status"), "work_started"), DataEntry((((("tasks_" + u) + "_app_") + y) + "_process"), "work_started")]) | |
293 | + | else throw("checks are not passed") | |
294 | + | } | |
295 | + | ||
296 | + | ||
297 | + | ||
298 | + | @Callable(F) | |
299 | + | func acceptWorkResult (u,ab) = if (E(F.caller, u)) | |
300 | + | then { | |
301 | + | let ac = c((("tasks_" + u) + "_reward")) | |
302 | + | let y = h((("tasks_" + u) + "_performer")) | |
303 | + | let ad = h((((("tasks_" + u) + "_app_") + y) + "_leader")) | |
304 | + | ScriptResult(WriteSet([DataEntry((("tasks_" + u) + "_status"), "work_finished"), DataEntry((((("tasks_" + u) + "_app_") + y) + "_process"), "work_finished"), DataEntry((("tasks_" + u) + "_report"), ab)]), TransferSet([ScriptTransfer(addressFromStringValue(ad), ac, unit)])) | |
305 | + | } | |
306 | + | else throw("checks are not passed") | |
307 | + | ||
308 | + | ||
309 | + | ||
310 | + | @Callable(F) | |
311 | + | func rejectTask (u) = if (n(F.caller)) | |
312 | + | then WriteSet([DataEntry((("tasks_" + u) + "_status"), "rejected")]) | |
313 | + | else throw("grants working group access only") | |
314 | + | ||
315 | + |
github/deemru/w8io/026f985 25.81 ms ◑