tx · 6PLcweJSW5wWX6e8uR5uVnUspesqTCPi7Prdh6KGAKvz

3MvtHG8rRb8Gch2Rwo4dHbre5TCdcWPnQ33:  -0.01400000 Waves

2019.09.08 15:04 [667079] smart account 3MvtHG8rRb8Gch2Rwo4dHbre5TCdcWPnQ33 > SELF 0.00000000 Waves

{ "type": 13, "id": "6PLcweJSW5wWX6e8uR5uVnUspesqTCPi7Prdh6KGAKvz", "fee": 1400000, "feeAssetId": null, "timestamp": 1567944255618, "version": 1, "sender": "3MvtHG8rRb8Gch2Rwo4dHbre5TCdcWPnQ33", "senderPublicKey": "HVdu7RfCS6eCxCZq8iu5tWBfd83pJtXJRc2H3GtR9UPX", "proofs": [ "4t4C4WhxQz93fJuH4xKyvfYUtfnUg1V74CsaZnr6Au6Ki3doNWgxme3jJQJxC6c1Ucy64AhsMwfqVYuLCNsbFLmQ" ], "script": "base64:AAIDAAAAAAAAAAAAAAACAQAAABR2b3RlcklzQWxsb3dlZFRvVm90ZQAAAAEAAAAOdm90ZXJQdWJsaWNLZXkEAAAADGF1ZGl0b3Ixb3BlbgEAAAAgTOH7xS01EPXuKJWTnxxjNR2ezIws9jQx04+962nHjyQEAAAADGZhY3Rvcnkxb3BlbgEAAAAgmKQJPfQtwWEG3Uomcd12TJmvXUIMK+zQKCau0mej4h8DAwkBAAAAAiE9AAAAAgUAAAAOdm90ZXJQdWJsaWNLZXkFAAAADGF1ZGl0b3Ixb3BlbgkBAAAAAiE9AAAAAgUAAAAOdm90ZXJQdWJsaWNLZXkFAAAADGZhY3Rvcnkxb3BlbgcHBgEAAAAJaXNBdWRpdG9yAAAAAQAAAA52b3RlclB1YmxpY0tleQQAAAAMYXVkaXRvcjFvcGVuAQAAACBM4fvFLTUQ9e4olZOfHGM1HZ7MjCz2NDHTj73racePJAMJAQAAAAIhPQAAAAIFAAAADnZvdGVyUHVibGljS2V5BQAAAAxhdWRpdG9yMW9wZW4HBgAAAAIAAAABaQEAAAAEdm90ZQAAAAEAAAAHdGhlVm90ZQMJAQAAAAEhAAAAAQkBAAAAFHZvdGVySXNBbGxvd2VkVG9Wb3RlAAAAAQgFAAAAAWkAAAAPY2FsbGVyUHVibGljS2V5CQAAAgAAAAECAAAAKNCjINCy0LDRgSDQvdC10YIg0L/RgNCw0LIg0LTQvtGB0YLRg9C/0LAEAAAAD2RhdGFGcm9tU3RvcmFnZQkABBoAAAACBQAAAAR0aGlzCQACWAAAAAEIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQQAAAAKZ2V0QXVkaXRvcgkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwIAAAAHQXVkaXRvcgQAAAAKZ2V0RmFjdG9yeQkBAAAAEUBleHRyTmF0aXZlKDEwNTMpAAAAAgUAAAAEdGhpcwIAAAAHRmFjdG9yeQMJAQAAAAlpc0RlZmluZWQAAAABBQAAAA9kYXRhRnJvbVN0b3JhZ2UJAAACAAAAAQIAAAAz0JLQsNGI0LAg0L/QvtC00L/QuNGB0Ywg0YPQttC1INC/0L7RgdGC0LDQstC70LXQvdCwCQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACCQACWAAAAAEIBQAAAAFpAAAAD2NhbGxlclB1YmxpY0tleQUAAAAHdGhlVm90ZQUAAAADbmlsAAAAAWkBAAAABnJlY29yZAAAAAAEAAAADGF1ZGl0b3Ixb3BlbgEAAAAgTOH7xS01EPXuKJWTnxxjNR2ezIws9jQx04+962nHjyQEAAAADGZhY3Rvcnkxb3BlbgEAAAAgmKQJPfQtwWEG3Uomcd12TJmvXUIMK+zQKCau0mej4h8EAAAABm15T3BlbgEAAAAg1vr9sz3+rJ3s1NhdW9x4WQc/RJ6BRvb5Hz4FntqCYSgDCQEAAAACIT0AAAACCAUAAAABaQAAAA9jYWxsZXJQdWJsaWNLZXkFAAAABm15T3BlbgkAAAIAAAABAgAAAFLQktGLINC90LUg0LzQvtC20LXRgtC1INC00L7QsdCw0LLQu9GP0YLRjCDQtNCw0L3QvdGL0LUsINCy0Ysg0L3QtSDQt9Cw0LrQsNC30YfQuNC6CQEAAAAIV3JpdGVTZXQAAAABCQAETAAAAAIJAQAAAAlEYXRhRW50cnkAAAACAgAAAAdhdWRpdG9yBQAAAAxhdWRpdG9yMW9wZW4JAARMAAAAAgkBAAAACURhdGFFbnRyeQAAAAICAAAAB2ZhY3RvcnkFAAAADGZhY3Rvcnkxb3BlbgUAAAADbmlsAAAAAHxx0cY=", "chainId": 84, "height": 667079, "spentComplexity": 0 } View: original | compacted Prev: CyWuvCGy4NVBvMAEhkDnkMY4ip23hedzVvyM5RSfgJ3i Next: 8GRG3SssLQvQwGRC9hyLc2NqBGaggbzkG6L7mSPggJe9 Diff:
OldNewDifferences
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func voterIsAllowedToVote (voterPublicKey) = {
5- let alekseiPubKey = base58'8QvKvspfNF6cUv2DFMCfvT8SrbraERqXpNMEMqBfJZ3e'
6- let annaPubKey = base58'AtYwJTqWNfwYrPnWVvfmnPTSTEioiLFzUTcZVttgDj1x'
7- if (if ((voterPublicKey != alekseiPubKey))
8- then (voterPublicKey != annaPubKey)
5+ let auditor1open = base58'6B7r4pWd3dB79ojogTFvQ2tspsav6gsL4iWqzsRG2rhR'
6+ let factory1open = base58'BGr3aRnHxWYKViZ9AKkqE7CdczJtRGk2vCzbGF5mX7dp'
7+ if (if ((voterPublicKey != auditor1open))
8+ then (voterPublicKey != factory1open)
99 else false)
10+ then false
11+ else true
12+ }
13+
14+
15+func isAuditor (voterPublicKey) = {
16+ let auditor1open = base58'6B7r4pWd3dB79ojogTFvQ2tspsav6gsL4iWqzsRG2rhR'
17+ if ((voterPublicKey != auditor1open))
1018 then false
1119 else true
1220 }
1422
1523 @Callable(i)
1624 func vote (theVote) = if (!(voterIsAllowedToVote(i.callerPublicKey)))
17- then throw("Вы не можете голосовать, так как вас нет в списке голосующих!")
25+ then throw("У вас нет прав доступа")
1826 else {
1927 let dataFromStorage = getInteger(this, toBase58String(i.callerPublicKey))
28+ let getAuditor = getStringValue(this, "Auditor")
29+ let getFactory = getStringValue(this, "Factory")
2030 if (isDefined(dataFromStorage))
21- then throw("Вы уже голосовали! Повтороное голосование запрещено.")
31+ then throw("Ваша подпись уже поставлена")
2232 else WriteSet([DataEntry(toBase58String(i.callerPublicKey), theVote)])
2333 }
2434
2535
2636
2737 @Callable(i)
28-func record (theInteger) = {
29- let myOpen = base58'HVdu7RfCS6eCxCZq8iu5tWBfd83pJtXJRc2H3GtR9UPX'
38+func record () = {
39+ let auditor1open = base58'6B7r4pWd3dB79ojogTFvQ2tspsav6gsL4iWqzsRG2rhR'
40+ let factory1open = base58'BGr3aRnHxWYKViZ9AKkqE7CdczJtRGk2vCzbGF5mX7dp'
41+ let myOpen = base58'FUCE44aWkQuFEKpfWRe3zoW8pGN2caDm1vqoK55FTnLP'
3042 if ((i.callerPublicKey != myOpen))
3143 then throw("Вы не можете добавлять данные, вы не заказчик")
32- else WriteSet([DataEntry("test_key1", toBase58String(i.callerPublicKey)), DataEntry("test_key2", theInteger)])
44+ else WriteSet([DataEntry("auditor", auditor1open), DataEntry("factory", factory1open)])
3345 }
3446
3547
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 func voterIsAllowedToVote (voterPublicKey) = {
5- let alekseiPubKey = base58'8QvKvspfNF6cUv2DFMCfvT8SrbraERqXpNMEMqBfJZ3e'
6- let annaPubKey = base58'AtYwJTqWNfwYrPnWVvfmnPTSTEioiLFzUTcZVttgDj1x'
7- if (if ((voterPublicKey != alekseiPubKey))
8- then (voterPublicKey != annaPubKey)
5+ let auditor1open = base58'6B7r4pWd3dB79ojogTFvQ2tspsav6gsL4iWqzsRG2rhR'
6+ let factory1open = base58'BGr3aRnHxWYKViZ9AKkqE7CdczJtRGk2vCzbGF5mX7dp'
7+ if (if ((voterPublicKey != auditor1open))
8+ then (voterPublicKey != factory1open)
99 else false)
10+ then false
11+ else true
12+ }
13+
14+
15+func isAuditor (voterPublicKey) = {
16+ let auditor1open = base58'6B7r4pWd3dB79ojogTFvQ2tspsav6gsL4iWqzsRG2rhR'
17+ if ((voterPublicKey != auditor1open))
1018 then false
1119 else true
1220 }
1321
1422
1523 @Callable(i)
1624 func vote (theVote) = if (!(voterIsAllowedToVote(i.callerPublicKey)))
17- then throw("Вы не можете голосовать, так как вас нет в списке голосующих!")
25+ then throw("У вас нет прав доступа")
1826 else {
1927 let dataFromStorage = getInteger(this, toBase58String(i.callerPublicKey))
28+ let getAuditor = getStringValue(this, "Auditor")
29+ let getFactory = getStringValue(this, "Factory")
2030 if (isDefined(dataFromStorage))
21- then throw("Вы уже голосовали! Повтороное голосование запрещено.")
31+ then throw("Ваша подпись уже поставлена")
2232 else WriteSet([DataEntry(toBase58String(i.callerPublicKey), theVote)])
2333 }
2434
2535
2636
2737 @Callable(i)
28-func record (theInteger) = {
29- let myOpen = base58'HVdu7RfCS6eCxCZq8iu5tWBfd83pJtXJRc2H3GtR9UPX'
38+func record () = {
39+ let auditor1open = base58'6B7r4pWd3dB79ojogTFvQ2tspsav6gsL4iWqzsRG2rhR'
40+ let factory1open = base58'BGr3aRnHxWYKViZ9AKkqE7CdczJtRGk2vCzbGF5mX7dp'
41+ let myOpen = base58'FUCE44aWkQuFEKpfWRe3zoW8pGN2caDm1vqoK55FTnLP'
3042 if ((i.callerPublicKey != myOpen))
3143 then throw("Вы не можете добавлять данные, вы не заказчик")
32- else WriteSet([DataEntry("test_key1", toBase58String(i.callerPublicKey)), DataEntry("test_key2", theInteger)])
44+ else WriteSet([DataEntry("auditor", auditor1open), DataEntry("factory", factory1open)])
3345 }
3446
3547

github/deemru/w8io/873ac7e 
44.34 ms