tx · BgHLYGcxna3mZAShseWAkNGTmeAqNgzs6JLfC81wEZEQ

3N8xXaYjE27Aa79d5hHrhHu9HaFoTBmhDEj:  -0.01400000 Waves

2020.12.22 11:47 [1319688] smart account 3N8xXaYjE27Aa79d5hHrhHu9HaFoTBmhDEj > SELF 0.00000000 Waves

{ "type": 13, "id": "BgHLYGcxna3mZAShseWAkNGTmeAqNgzs6JLfC81wEZEQ", "fee": 1400000, "feeAssetId": null, "timestamp": 1608626869429, "version": 2, "chainId": 84, "sender": "3N8xXaYjE27Aa79d5hHrhHu9HaFoTBmhDEj", "senderPublicKey": "A2m227AHcq7gWfSU59Q3UJaqkEa7SccFYmJuWHbFrrKE", "proofs": [ "2PTHAQVLXPoz3R21TrPAkaeCbbYNEhEvos9z6RGZgSfdQx8sMeAAegymhe4a2uwsJsP2d29pmirSyiDCsbH3t9wJ" ], "script": "base64:AAIEAAAAAAAAACgIAhIECgIECBIDCgEEEgYKBAgICAgSBgoECAgICBIECgIICBIDCgEIAAAAHAAAAAALc2lnbkFzc2V0SWQBAAAAIOilarzKd0LycGEyNUpPRYO5uR7lmWcXw3Hq2QuhBK3rAAAAAAVjaHJpcwIAAAAjM01zRzZqUE5DclZKVXRZQjdYSkJ4Uzd1dFdzWEFmNG45VnAAAAAABGpvZXACAAAAIzNNem00Vkx3c045dVp3YlRNelBqM1h1eFY2a0VmQVI4VUROAAAAAA5kYXBwUnVubmluZ0tleQIAAAAUY29uZl9kYXBwX2lzX3J1bm5pbmcAAAAAEW1haW50ZW5hbmNlTVNHS2V5AgAAABRjb25mX21haW50ZW5hbmNlX21zZwAAAAASd2hpdGVsaXN0ZWRvbmx5S2V5AgAAABVjb25mX3doaXRlbGlzdGVkX29ubHkAAAAAC2RhcHBSdW5uaW5nBAAAAAckbWF0Y2gwCQAEGwAAAAIFAAAABHRoaXMFAAAADmRhcHBSdW5uaW5nS2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAdCb29sZWFuBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhBgAAAAAObWFpbnRlbmFuY2VNU0cEAAAAByRtYXRjaDAJAAQdAAAAAgUAAAAEdGhpcwUAAAARbWFpbnRlbmFuY2VNU0dLZXkDCQAAAQAAAAIFAAAAByRtYXRjaDACAAAABlN0cmluZwQAAAABYQUAAAAHJG1hdGNoMAUAAAABYQIAAAAAAAAAAA93aGl0ZWxpc3RlZG9ubHkEAAAAByRtYXRjaDAJAAQbAAAAAgUAAAAEdGhpcwUAAAASd2hpdGVsaXN0ZWRvbmx5S2V5AwkAAAEAAAACBQAAAAckbWF0Y2gwAgAAAAdCb29sZWFuBAAAAAFhBQAAAAckbWF0Y2gwBQAAAAFhBgAAAAALdXNlckFsbG93ZWQCAAAAB0FMTE9XRUQAAAAADnVzZXJSZWdpc3RlcmVkAgAAAApSRUdJU1RFUkVEAAAAAAx1c2VyVmVyaWZpZWQCAAAACFZFUklGSUVEAAAAAA11c2VyU3VzcGVuZGVkAgAAAAlTVVNQRU5ERUQAAAAAC3VzZXJSZW1vdmVkAgAAAAdSRU1PVkVEAAAAABJ1c2VyQ2hhbmdlUmVx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dXMFAAAAC3VzZXJBbGxvd2VkBQAAAAt1c2VyQWxsb3dlZAMJAAAAAAAAAgUAAAAGc3RhdHVzBQAAABJ1c2VyQ2hhbmdlUmVxdWlyZWQFAAAAEnVzZXJDaGFuZ2VSZXF1aXJlZAMDCQAAAAAAAAIFAAAABnN0YXR1cwUAAAAJdXNlclJlc2V0CQAAAAAAAAIFAAAADWN1cnJlbnRTdGF0dXMFAAAAC3VzZXJBbGxvd2VkBwIAAAAACQAAAgAAAAECAAAADlVua25vd24gc3RhdHVzBAAAABB1c2VySXNSZWdpc3RlcmVkCQEAAAAPZ2V0SW50ZWdlckJ5S2V5AAAAAQkBAAAAC2tleVVzZXJEYXRlAAAAAQUAAAAHYWRkcmVzcwMDCQAAAAAAAAIFAAAAEHVzZXJJc1JlZ2lzdGVyZWQAAAAAAAAAAAAJAQAAAAIhPQAAAAIFAAAABnN0YXR1cwUAAAALdXNlckFsbG93ZWQHCQAAAgAAAAECAAAAMVlvdSBjYW50IHNldCB0aGlzIHN0YXR1cywgdXNlciBpcyBub3QgcmVnaXN0ZXJlZC4DAwkAAAAAAAACBQAAAA1jdXJyZW50U3RhdHVzBQAAAAt1c2VyQWxsb3dlZAkAAAAAAAACBQAAAAZzdGF0dXMFAAAAC3VzZXJBbGxvd2VkBwkAAAIAAAABAgAAABRVc2VyIGFscmVhZHkgYWxsb3dlZAMDCQAAAAAAAAIFAAAADWN1cnJlbnRTdGF0dXMFAAAADnVzZXJSZWdpc3RlcmVkCQAAAAAAAAIFAAAABnN0YXR1cwUAAAALdXNlckFsbG93ZWQHCQAAAgAAAAECAAAAIVVzZXIgYWxyZWFkeSBhbGxvd2VkICYgcmVnaXN0ZXJlZAMDCQAAAAAAAAIFAAAADWN1cnJlbnRTdGF0dXMFAAAADHVzZXJWZXJpZmllZAkAAAAAAAACBQAAAAZzdGF0dXMFAAAAC3VzZXJBbGxvd2VkBwkAAAIAAAABAgAAAB9Vc2VyIGFscmVhZHkgYWxsb3dlZCAmIHZlcmlmaWVkBAAAAARuYW1lCQACWgAAAAEJAAGbAAAAAQkBAAAADmdldFN0cmluZ0J5S2V5AAAAAQkBAAAAC2tleVVzZXJOYW1lAAAAAQUAAAAHYWRkcmVzcwQAAAAFdGh1bWIJAAJaAAAAAQkA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", "height": 1319688, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: J3yCdkJNnr3AKbBsHUhLsswYanALPk7FLZ1zZRZWWLiG Next: 31WFJ9N3oGv8fMZTsAfcPbckScgviAGvvmVMZ6owcAGo Diff:
OldNewDifferences
246246 else false)
247247 then throw("User already allowed & verified")
248248 else {
249- let M = toBase64String(toBytes(C(U)))
250- let O = toBase64String(toBytes(F(U)))
251- let Z = H(U)
252- let S = (((((((("{\"address\": \"" + U) + "\", \"name\": \"") + M) + "\", \"thumb\":\"") + O) + "\",\"date\":\"") + Z) + "\"}")
249+ let M = toBase64String(toBytes(t(C(U))))
250+ let O = toBase64String(toBytes(t(F(U))))
251+ let Z = w(H(U))
252+ let S = (((((((("{\"address\": \"" + U) + "\", \"name\": \"") + M) + "\", \"thumb\":\"") + O) + "\",\"date\":\"") + toString(Z)) + "\"}")
253253 if (containsElement([b, c, toString(this)], B))
254- then [StringEntry(G(U), X), DeleteEntry(((W + "_") + U)), StringEntry(((X + "_") + U), M)]
254+ then [StringEntry(G(U), X), DeleteEntry(((W + "_") + U)), StringEntry(((X + "_") + U), S)]
255255 else throw("Not allowed to change user status")
256256 }
257257 }
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 4 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let a = base58'Gf9t8FA4H3ssoZPCwrg3KwUFCci8zuUFP9ssRsUY3s6a'
55
66 let b = "3MsG6jPNCrVJUtYB7XJBxS7utWsXAf4n9Vp"
77
88 let c = "3Mzm4VLwsN9uZwbTMzPj3XuxV6kEfAR8UDN"
99
1010 let d = "conf_dapp_is_running"
1111
1212 let e = "conf_maintenance_msg"
1313
1414 let f = "conf_whitelisted_only"
1515
1616 let g = {
1717 let h = getBoolean(this, d)
1818 if ($isInstanceOf(h, "Boolean"))
1919 then {
2020 let i = h
2121 i
2222 }
2323 else true
2424 }
2525
2626 let j = {
2727 let h = getString(this, e)
2828 if ($isInstanceOf(h, "String"))
2929 then {
3030 let i = h
3131 i
3232 }
3333 else ""
3434 }
3535
3636 let k = {
3737 let h = getBoolean(this, f)
3838 if ($isInstanceOf(h, "Boolean"))
3939 then {
4040 let i = h
4141 i
4242 }
4343 else true
4444 }
4545
4646 let l = "ALLOWED"
4747
4848 let m = "REGISTERED"
4949
5050 let n = "VERIFIED"
5151
5252 let o = "SUSPENDED"
5353
5454 let p = "REMOVED"
5555
5656 let q = "CHANGE_REQUIRED"
5757
5858 let r = "UNREGISTERED"
5959
6060 let s = "RESET"
6161
6262 func t (u) = {
6363 let h = getString(this, u)
6464 if ($isInstanceOf(h, "String"))
6565 then {
6666 let i = h
6767 i
6868 }
6969 else ""
7070 }
7171
7272
7373 func v (u) = {
7474 let h = getBoolean(this, u)
7575 if ($isInstanceOf(h, "Boolean"))
7676 then {
7777 let i = h
7878 i
7979 }
8080 else false
8181 }
8282
8383
8484 func w (u) = {
8585 let h = getInteger(this, u)
8686 if ($isInstanceOf(h, "Int"))
8787 then {
8888 let x = h
8989 x
9090 }
9191 else 0
9292 }
9393
9494
9595 func y (z) = if (if ((75 > size(z)))
9696 then (60 > size(split(z, "/")[0]))
9797 else false)
9898 then (16 > size(split(z, "/")[1]))
9999 else false
100100
101101
102102 func A (B) = ("user_" + B)
103103
104104
105105 func C (B) = ("user_name_" + B)
106106
107107
108108 func D (B) = ("user_desc_" + B)
109109
110110
111111 func E (B) = ("user_social_" + B)
112112
113113
114114 func F (B) = ("user_thumb_" + B)
115115
116116
117117 func G (B) = ("user_status_" + B)
118118
119119
120120 func H (B) = ("user_date_" + B)
121121
122122
123123 @Callable(x)
124124 func appRunning (I,J) = {
125125 let B = toString(addressFromPublicKey(x.callerPublicKey))
126126 let K = toBase58String(x.transactionId)
127127 if (containsElement([b, c, toString(this)], B))
128128 then [BooleanEntry(d, I), StringEntry(e, J)]
129129 else throw("You are not allowed to change this")
130130 }
131131
132132
133133
134134 @Callable(x)
135135 func registrationMode (L) = {
136136 let B = toString(addressFromPublicKey(x.callerPublicKey))
137137 let K = toBase58String(x.transactionId)
138138 if (containsElement([b, c, toString(this)], B))
139139 then [BooleanEntry(f, L)]
140140 else throw("You are not allowed to change this")
141141 }
142142
143143
144144
145145 @Callable(x)
146146 func registerUser (M,N,O,P) = if (!(g))
147147 then throw(j)
148148 else {
149149 let B = toString(addressFromPublicKey(x.callerPublicKey))
150150 let Q = t(G(B))
151151 let K = toBase58String(x.transactionId)
152152 let R = lastBlock.timestamp
153153 if (if ((Q == o))
154154 then true
155155 else (Q == p))
156156 then throw("Account suspended/ removed.")
157157 else if ((Q == m))
158158 then throw("Already registered")
159159 else if (if ((Q == ""))
160160 then k
161161 else false)
162162 then throw("Can't register, get approved first.")
163163 else if (if ((M == ""))
164164 then true
165165 else (N == ""))
166166 then throw("Name and description cannot be empty")
167167 else if ((size(N) > 600))
168168 then throw("600 Char. max description")
169169 else if ((size(M) > 45))
170170 then throw("45 Char. max name")
171171 else {
172172 let S = (((((((("{\"address\": \"" + B) + "\", \"name\": \"") + toBase64String(toBytes(C(M)))) + "\", \"thumb\":\"") + toBase64String(toBytes(C(O)))) + "\",\"date\":\"") + toString(R)) + "\"}")
173173 [IntegerEntry(H(B), R), StringEntry(A(B), ((K + "_") + toString(R))), StringEntry(C(B), M), StringEntry(D(B), N), StringEntry(E(B), P), StringEntry(F(B), O), StringEntry(G(B), m), StringEntry(((m + "_") + B), S)]
174174 }
175175 }
176176
177177
178178
179179 @Callable(x)
180180 func updateUser (M,N,O,P) = if (!(g))
181181 then throw(j)
182182 else {
183183 let B = toString(addressFromPublicKey(x.callerPublicKey))
184184 let K = toBase58String(x.transactionId)
185185 let T = t(G(B))
186186 if (if ((T == o))
187187 then true
188188 else (T == p))
189189 then throw("Account suspended/ removed.")
190190 else if (if ((T == ""))
191191 then true
192192 else (T == l))
193193 then throw("Register first")
194194 else if (if ((M == ""))
195195 then true
196196 else (N == ""))
197197 then throw("Name & description cannot be empty")
198198 else if ((size(N) > 600))
199199 then throw("600 Char. max for description")
200200 else if ((size(M) > 45))
201201 then throw("45 Char. max name")
202202 else [StringEntry(C(B), M), StringEntry(D(B), N), StringEntry(E(B), P), StringEntry(F(B), O)]
203203 }
204204
205205
206206
207207 @Callable(x)
208208 func changeUserStatus (U,V) = if (!(g))
209209 then throw(j)
210210 else {
211211 let B = toString(addressFromPublicKey(x.callerPublicKey))
212212 let K = toBase58String(x.transactionId)
213213 let W = t(G(U))
214214 let X = if ((V == n))
215215 then n
216216 else if ((V == m))
217217 then m
218218 else if ((V == o))
219219 then o
220220 else if ((V == p))
221221 then p
222222 else if ((V == l))
223223 then l
224224 else if ((V == q))
225225 then q
226226 else if (if ((V == s))
227227 then (W == l)
228228 else false)
229229 then ""
230230 else throw("Unknown status")
231231 let Y = w(H(U))
232232 if (if ((Y == 0))
233233 then (V != l)
234234 else false)
235235 then throw("You cant set this status, user is not registered.")
236236 else if (if ((W == l))
237237 then (V == l)
238238 else false)
239239 then throw("User already allowed")
240240 else if (if ((W == m))
241241 then (V == l)
242242 else false)
243243 then throw("User already allowed & registered")
244244 else if (if ((W == n))
245245 then (V == l)
246246 else false)
247247 then throw("User already allowed & verified")
248248 else {
249- let M = toBase64String(toBytes(C(U)))
250- let O = toBase64String(toBytes(F(U)))
251- let Z = H(U)
252- let S = (((((((("{\"address\": \"" + U) + "\", \"name\": \"") + M) + "\", \"thumb\":\"") + O) + "\",\"date\":\"") + Z) + "\"}")
249+ let M = toBase64String(toBytes(t(C(U))))
250+ let O = toBase64String(toBytes(t(F(U))))
251+ let Z = w(H(U))
252+ let S = (((((((("{\"address\": \"" + U) + "\", \"name\": \"") + M) + "\", \"thumb\":\"") + O) + "\",\"date\":\"") + toString(Z)) + "\"}")
253253 if (containsElement([b, c, toString(this)], B))
254- then [StringEntry(G(U), X), DeleteEntry(((W + "_") + U)), StringEntry(((X + "_") + U), M)]
254+ then [StringEntry(G(U), X), DeleteEntry(((W + "_") + U)), StringEntry(((X + "_") + U), S)]
255255 else throw("Not allowed to change user status")
256256 }
257257 }
258258
259259
260260
261261 @Callable(x)
262262 func deleteUser (U) = {
263263 let B = toString(addressFromPublicKey(x.callerPublicKey))
264264 let K = toBase58String(x.transactionId)
265265 let W = t(G(U))
266266 if (containsElement([b, toString(this)], B))
267267 then [DeleteEntry(H(U)), DeleteEntry(A(U)), DeleteEntry(C(U)), DeleteEntry(D(U)), DeleteEntry(E(U)), DeleteEntry(F(U)), DeleteEntry(((W + "_") + U)), StringEntry(G(U), p)]
268268 else throw("Not allowed")
269269 }
270270
271271

github/deemru/w8io/c3f4982 
39.73 ms