tx · GRgRAs3Qi8KaiMHDYEekKk6z87yYDomLWso6WyR9ZNWk

3N9djkx7H8pg7k41imWRdDPkpmAsfmbTTMZ:  -0.01000000 Waves

2023.05.15 13:28 [2578949] smart account 3N9djkx7H8pg7k41imWRdDPkpmAsfmbTTMZ > SELF 0.00000000 Waves

{ "type": 13, "id": "GRgRAs3Qi8KaiMHDYEekKk6z87yYDomLWso6WyR9ZNWk", "fee": 1000000, "feeAssetId": null, "timestamp": 1684146530126, "version": 2, "chainId": 84, "sender": "3N9djkx7H8pg7k41imWRdDPkpmAsfmbTTMZ", "senderPublicKey": "E99RMSgaPV178LxFRG5DUvebohbR8fMCB59BCD8stBSC", "proofs": [ "3P4jGq1ibWffe2ixa757UPpWLqUYS8mnjkedtHYcasuFSG9rssALPPSxi8NWPEywdTF6Q5KjyQxWpFkyvEHz423g" ], "script": "base64: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AQgFAAAAAWkAAAANdHJhbnNhY3Rpb25JZAIAAAAgX2NvbnNvbGlkYXRlZF9vcHRpb25fZGVzY3JpcHRpb24FAAAAEWRlc2NyaXB0aW9uT3B0aW9uBQAAAANuaWwJAAACAAAAAQIAAAAqU2VuZGVyIG5vdCBhbGxvd2VkIHRvIGNvbnNvbGlkYXRlIG9wdGlvbnMhAAAAAWkBAAAAGGFkZENvbnNvbGlkYXRlZENyaXRlcmlvbgAAAAIAAAANbmFtZUNyaXRlcmlvbgAAABRkZXNjcmlwdGlvbkNyaXRlcmlvbgQAAAAGc2VuZGVyCQACWAAAAAEICAUAAAABaQAAAAZjYWxsZXIAAAAFYnl0ZXMDCQEAAAANaXNWYWxpZFNlbmRlcgAAAAEFAAAABnNlbmRlcgkBAAAACFdyaXRlU2V0AAAAAQkABEwAAAACCQEAAAAJRGF0YUVudHJ5AAAAAgkAASwAAAACCQACWAAAAAEIBQAAAAFpAAAADXRyYW5zYWN0aW9uSWQCAAAAHF9jb25zb2xpZGF0ZWRfY3JpdGVyaW9uX25hbWUFAAAADW5hbWVDcml0ZXJpb24JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAAlgAAAABCAUAAAABaQAAAA10cmFuc2FjdGlvbklkAgAAACNfY29uc29saWRhdGVkX2NyaXRlcmlvbl9kZXNjcmlwdGlvbgUAAAAUZGVzY3JpcHRpb25Dcml0ZXJpb24FAAAAA25pbAkAAAIAAAABAgAAACtTZW5kZXIgbm90IGFsbG93ZWQgdG8gY29uc29saWRhdGUgY3JpdGVyaWEhAAAAAWkBAAAAEWV2YWx1YXRlQ3JpdGVyaW9uAAAAAgAAAAtpZENyaXRlcmlvbgAAABNpbXBvcnRhbmNlQ3JpdGVyaW9uBAAAAAZzZW5kZXIJAAJYAAAAAQgIBQAAAAFpAAAABmNhbGxlcgAAAAVieXRlcwMJAQAAAA1pc1ZhbGlkU2VuZGVyAAAAAQUAAAAGc2VuZGVyCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAtpZENyaXRlcmlvbgIAAAABXwkAAlgAAAABCAUAAAABaQAAAA10cmFuc2FjdGlvbklkAgAAAARfaW1wBQAAABNpbXBvcnRhbmNlQ3JpdGVyaW9uBQAAAANuaWwJAAACAAAAAQIAAAA0U2VuZGVyIG5vdCBhbGxvd2VkIHRvIGV2YWx1YXRlIG9yIGV2YWx1YXRlZCBhbHJlYWR5IQAAAAFpAQAAAA5ldmFsdWF0ZU9wdGlvbgAAAAMAAAAIaWRPcHRpb24AAAAGaWRDcml0AAAACmNvbXBsaWFuY2UEAAAABnNlbmRlcgkAAlgAAAABCAgFAAAAAWkAAAAGY2FsbGVyAAAABWJ5dGVzAwkBAAAADWlzVmFsaWRTZW5kZXIAAAABBQAAAAZzZW5kZXIJAQAAAAhXcml0ZVNldAAAAAEJAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAIJAAEsAAAAAgkAASwAAAACCQABLAAAAAIJAAEsAAAAAgkAASwAAAACBQAAAAhpZE9wdGlvbgIAAAABXwUAAAAGaWRDcml0AgAAAAFfCQABLwAAAAIJAAJYAAAAAQgFAAAAAWkAAAANdHJhbnNhY3Rpb25JZAAAAAAAAAAACAIAAAACX2MFAAAACmNvbXBsaWFuY2UFAAAAA25pbAkAAAIAAAABAgAAADRTZW5kZXIgbm90IGFsbG93ZWQgdG8gZXZhbHVhdGUgb3IgZXZhbHVhdGVkIGFscmVhZHkhAAAAAQAAAAJ0eAEAAAAGdmVyaWZ5AAAAAAQAAAAHJG1hdGNoMAUAAAACdHgHTrnMBA==", "height": 2578949, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: none Next: none Full:
OldNewDifferences
1-# no script
1+{-# STDLIB_VERSION 3 #-}
2+{-# SCRIPT_TYPE ACCOUNT #-}
3+{-# CONTENT_TYPE DAPP #-}
4+let EMTPYSTRING = ""
5+
6+func getStringFromKey (key) = match getString(this, key) {
7+ case str: String =>
8+ str
9+ case _ =>
10+ EMTPYSTRING
11+}
12+
13+
14+func isValidSender (sender) = {
15+ let entryForSenderAddress = getStringFromKey(sender)
16+ if ((entryForSenderAddress == EMTPYSTRING))
17+ then false
18+ else true
19+ }
20+
21+
22+@Callable(i)
23+func addOption (nameOption,descriptionOption) = {
24+ let sender = toBase58String(i.caller.bytes)
25+ if (isValidSender(sender))
26+ then WriteSet([DataEntry((toBase58String(i.transactionId) + "_name_option"), nameOption), DataEntry((toBase58String(i.transactionId) + "_description_option"), descriptionOption)])
27+ else throw("Sender not allowed to store options!")
28+ }
29+
30+
31+
32+@Callable(i)
33+func addCriterion (nameCriterion,descriptionCriterion) = {
34+ let sender = toBase58String(i.caller.bytes)
35+ if (isValidSender(sender))
36+ then WriteSet([DataEntry((toBase58String(i.transactionId) + "_name_criterion"), nameCriterion), DataEntry((toBase58String(i.transactionId) + "_description_criterion"), descriptionCriterion)])
37+ else throw("Sender not allowed to store criteria!")
38+ }
39+
40+
41+
42+@Callable(i)
43+func addUser (name) = {
44+ let sender = toBase58String(i.caller.bytes)
45+ if (isValidSender(sender))
46+ then WriteSet([DataEntry(name, "user")])
47+ else throw("Sender not allowed to add users!")
48+ }
49+
50+
51+
52+@Callable(i)
53+func addConsolidatedOption (nameOption,descriptionOption) = {
54+ let sender = toBase58String(i.caller.bytes)
55+ if (isValidSender(sender))
56+ then WriteSet([DataEntry((toBase58String(i.transactionId) + "_consolidated_option_name"), nameOption), DataEntry((toBase58String(i.transactionId) + "_consolidated_option_description"), descriptionOption)])
57+ else throw("Sender not allowed to consolidate options!")
58+ }
59+
60+
61+
62+@Callable(i)
63+func addConsolidatedCriterion (nameCriterion,descriptionCriterion) = {
64+ let sender = toBase58String(i.caller.bytes)
65+ if (isValidSender(sender))
66+ then WriteSet([DataEntry((toBase58String(i.transactionId) + "_consolidated_criterion_name"), nameCriterion), DataEntry((toBase58String(i.transactionId) + "_consolidated_criterion_description"), descriptionCriterion)])
67+ else throw("Sender not allowed to consolidate criteria!")
68+ }
69+
70+
71+
72+@Callable(i)
73+func evaluateCriterion (idCriterion,importanceCriterion) = {
74+ let sender = toBase58String(i.caller.bytes)
75+ if (isValidSender(sender))
76+ then WriteSet([DataEntry((((idCriterion + "_") + toBase58String(i.transactionId)) + "_imp"), importanceCriterion)])
77+ else throw("Sender not allowed to evaluate or evaluated already!")
78+ }
79+
80+
81+
82+@Callable(i)
83+func evaluateOption (idOption,idCrit,compliance) = {
84+ let sender = toBase58String(i.caller.bytes)
85+ if (isValidSender(sender))
86+ then WriteSet([DataEntry((((((idOption + "_") + idCrit) + "_") + take(toBase58String(i.transactionId), 8)) + "_c"), compliance)])
87+ else throw("Sender not allowed to evaluate or evaluated already!")
88+ }
89+
90+
91+@Verifier(tx)
92+func verify () = match tx {
93+ case _ =>
94+ false
95+}
96+

github/deemru/w8io/026f985 
16.77 ms