tx · EKh4Paqbr7R9syVTqKHRh3za72M7eBG7rTDrQwheuFbv

3MqxFhe869ri22Y1418TcrXUX2X9YMzG2Yb:  -0.01400000 Waves

2019.06.28 06:14 [561426] smart account 3MqxFhe869ri22Y1418TcrXUX2X9YMzG2Yb > SELF 0.00000000 Waves

{ "type": 13, "id": "EKh4Paqbr7R9syVTqKHRh3za72M7eBG7rTDrQwheuFbv", "fee": 1400000, "feeAssetId": null, "timestamp": 1561691740627, "version": 1, "sender": "3MqxFhe869ri22Y1418TcrXUX2X9YMzG2Yb", "senderPublicKey": "FRkBvFhV1T95mPTxp7sk2Ms2BuHViwyG7yPzxpxye1Kw", "proofs": [ "4bgCMVAyLPkz1D6KBzakrf3RB7XCfNSezqi4SaLmW3opkXUc4SWmTcB5JLWPPiXy46DR9CWofANiDkULwpn3LJAf" ], "script": "base64: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", "chainId": 84, "height": 561426, "spentComplexity": 0 } View: original | compacted Prev: 6V5htFLFAefvn6jwNrPdn5noA7Z8GLkTFE7Lc84Gr6A7 Next: 7p2nd2GTxzJ3wckcWQsqw82V1nbN9kUf5AYgj6MZg8ak Diff:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let priceadv = 10000000
4+let serviceFee = 10000000
55
66 let empty = "NULL"
77
88 let allMessageBoardKey = "all_message"
99
1010 let activeMessageKey = "active_message"
11+
12+let earnedWavesKey = "earnedWaves"
1113
1214 func uniqueKey (owner,text) = {
1315 let uKey = toBase58String(sha256(toBytes((owner + text))))
4244 let pmt = extract(i.payment)
4345 if (isDefined(pmt.assetId))
4446 then throw("WAVES token only at the moment")
45- else if ((pmt.amount != priceadv))
47+ else if ((pmt.amount != serviceFee))
4648 then throw("You need pay 0.1 WAVES")
4749 else {
4850 let ownerAddress = toBase58String(i.caller.bytes)
4951 let uKey = uniqueKey(ownerAddress, text)
5052 let allMessage = getNumberByKey(allMessageBoardKey)
5153 let actMessage = getNumberByKey(activeMessageKey)
52- WriteSet([DataEntry(("owner_" + uKey), ownerAddress), DataEntry(("message_" + uKey), text), DataEntry(allMessageBoardKey, (allMessage + 1)), DataEntry(activeMessageKey, (actMessage + 1))])
54+ let earnedWaves = getNumberByKey(earnedWavesKey)
55+ WriteSet([DataEntry(("owner_" + uKey), ownerAddress), DataEntry(("message_" + uKey), text), DataEntry(allMessageBoardKey, (allMessage + 1)), DataEntry(activeMessageKey, (actMessage + 1)), DataEntry(earnedWavesKey, (earnedWaves + serviceFee))])
5356 }
5457 }
5558
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 3 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
4-let priceadv = 10000000
4+let serviceFee = 10000000
55
66 let empty = "NULL"
77
88 let allMessageBoardKey = "all_message"
99
1010 let activeMessageKey = "active_message"
11+
12+let earnedWavesKey = "earnedWaves"
1113
1214 func uniqueKey (owner,text) = {
1315 let uKey = toBase58String(sha256(toBytes((owner + text))))
1416 uKey
1517 }
1618
1719
1820 func getNumberByKey (key) = {
1921 let num = match getInteger(this, key) {
2022 case a: Int =>
2123 a
2224 case _ =>
2325 0
2426 }
2527 num
2628 }
2729
2830
2931 func getStrByKey (key) = {
3032 let str = match getString(this, key) {
3133 case a: String =>
3234 a
3335 case _ =>
3436 empty
3537 }
3638 str
3739 }
3840
3941
4042 @Callable(i)
4143 func setMessage (text) = {
4244 let pmt = extract(i.payment)
4345 if (isDefined(pmt.assetId))
4446 then throw("WAVES token only at the moment")
45- else if ((pmt.amount != priceadv))
47+ else if ((pmt.amount != serviceFee))
4648 then throw("You need pay 0.1 WAVES")
4749 else {
4850 let ownerAddress = toBase58String(i.caller.bytes)
4951 let uKey = uniqueKey(ownerAddress, text)
5052 let allMessage = getNumberByKey(allMessageBoardKey)
5153 let actMessage = getNumberByKey(activeMessageKey)
52- WriteSet([DataEntry(("owner_" + uKey), ownerAddress), DataEntry(("message_" + uKey), text), DataEntry(allMessageBoardKey, (allMessage + 1)), DataEntry(activeMessageKey, (actMessage + 1))])
54+ let earnedWaves = getNumberByKey(earnedWavesKey)
55+ WriteSet([DataEntry(("owner_" + uKey), ownerAddress), DataEntry(("message_" + uKey), text), DataEntry(allMessageBoardKey, (allMessage + 1)), DataEntry(activeMessageKey, (actMessage + 1)), DataEntry(earnedWavesKey, (earnedWaves + serviceFee))])
5356 }
5457 }
5558
5659
5760
5861 @Callable(i)
5962 func removeMessage (uKey) = {
6063 let pmt = extract(i.payment)
6164 let owner = getStrByKey(("owner_" + uKey))
6265 let actMessage = getNumberByKey(activeMessageKey)
6366 let senderAddress = toBase58String(i.caller.bytes)
6467 if ((owner == empty))
6568 then throw("Message didn't found")
6669 else if ((owner != senderAddress))
6770 then throw(("You don't owner of message " + uKey))
6871 else WriteSet([DataEntry(activeMessageKey, (actMessage - 1)), DataEntry(("message_" + uKey), "#REMOVED#")])
6972 }
7073
7174

github/deemru/w8io/169f3d6 
31.39 ms