tx · DfwhV5mfnZHTbD7tWSVhvZHPvWGVzqsjaWhEL1jDFwwp

3MqxhXjG6DVDwFuLsaBz7sgt38iwHj9Da7f:  -0.00400000 Waves

2022.10.04 01:21 [2256768] smart account 3MqxhXjG6DVDwFuLsaBz7sgt38iwHj9Da7f > SELF 0.00000000 Waves

{ "type": 13, "id": "DfwhV5mfnZHTbD7tWSVhvZHPvWGVzqsjaWhEL1jDFwwp", "fee": 400000, "feeAssetId": null, "timestamp": 1664835725194, "version": 2, "chainId": 84, "sender": "3MqxhXjG6DVDwFuLsaBz7sgt38iwHj9Da7f", "senderPublicKey": "24F9Fvi53bZzs4e399kBtXVRriDkrJjjVpfMwrVBfX9N", "proofs": [ "2bTZ7GjRNsCo9B5dtzfUBhJPADG7zxRtTMMWUCMPupCqrbndtiEctqADsqfYTK4PpZ5tyqGMFi2nqbpK1F8ZGFHt" ], "script": "base64:BgIwCAISCAoGCAgICAEIEgwKCggICAgICAgICAgSCAoGCAgICAgIEgQKAggIEgQKAggIBQAQYWRtaW5fd2FsbGV0X29uZQIjM044eDltYjQ4MWkyazZjRzdROVhVVjNlNW56aDFtZHpzTnkAEGFkbWluX3dhbGxldF90d28CIzNOM0RDbmdqaWRpdmtKYlRKd0ZURXZiWVJUZmZDV1ZCTENMABJhZG1pbl93YWxsZXRfdGhyZWUCIzNOOTFWQmt0b1RQU0JMNk5rSFJzQU0xRExXSDJUNnF2UXJzARRjaGVja19hZG1pbnNfd2FsbGV0cwELdXNlcl93YWxsZXQDAwMJAAACBQt1c2VyX3dhbGxldAUQYWRtaW5fd2FsbGV0X29uZQYJAAACBQt1c2VyX3dhbGxldAUQYWRtaW5fd2FsbGV0X3R3bwYJAAACBQt1c2VyX3dhbGxldAUSYWRtaW5fd2FsbGV0X3RocmVlBgcBDXRyeUdldEludGVnZXIBA2tleQQHJG1hdGNoMAkAmggCBQR0aGlzBQNrZXkDCQABAgUHJG1hdGNoMAIDSW50BAFiBQckbWF0Y2gwBQFiAAAFAWkBCGFkZF9ibG9nBglwdWJsaXNoZXINYXJ3ZWF2ZV90eF9pZAlzaWduYXR1cmUKYmxvZ19jb3ZlchBudW1iZXJfb2ZfaW1hZ2VzBmltYWdlcwMDCQAAAgkApQgBCAUBaQZjYWxsZXIFCXB1Ymxpc2hlcgYJARRjaGVja19hZG1pbnNfd2FsbGV0cwEJAKUIAQgFAWkGY2FsbGVyBAV0eF9pZAkAsAkBCAUBaQ10cmFuc2FjdGlvbklkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgVibG9nXwUFdHhfaWQCCl9wdWJsaXNoZXIFCXB1Ymxpc2hlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFYmxvZ18FBXR4X2lkAg5fYXJ3ZWF2ZV90eF9pZAUNYXJ3ZWF2ZV90eF9pZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFYmxvZ18FBXR4X2lkAgpfc2lnbmF0dXJlBQlzaWduYXR1cmUJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBWJsb2dfBQV0eF9pZAILX2Jsb2dfY292ZXIFCmJsb2dfY292ZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBWJsb2dfBQV0eF9pZAIHX2ltYWdlcwUGaW1hZ2VzCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIJAKwCAgIFYmxvZ18FBXR4X2lkAhFfbnVtYmVyX29mX2ltYWdlcwUQbnVtYmVyX29mX2ltYWdlcwUDbmlsCQACAQJNRVJSUk9SICEsIGFkZF9ibG9nLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQENc2V0X3VzZXJfZGF0YQoGd2FsbGV0BG5hbWUKaW1hZ2VfbGluawpjb3Zlcl9saW5rA2JpbxBnb29nbGVfYW5hbHl0aWNzB3R3aXR0ZXIIdGVsZWdyYW0QeWFuZGV4X2FuYWx5dGljcwVub3RlcwMDCQAAAgkApQgBCAUBaQZjYWxsZXIFBndhbGxldAYJARRjaGVja19hZG1pbnNfd2FsbGV0cwEJAKUIAQgFAWkGY2FsbGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0Agdfam9pbmVkAgN5ZXMJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCBV9uYW1lBQRuYW1lCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AgpfaW1hZ2VMaW5rBQppbWFnZV9saW5rCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AgpfY292ZXJMaW5rBQpjb3Zlcl9saW5rCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AgRfYmlvBQNiaW8JAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCEF9nb29nbGVBbmFseXRpY3MFEGdvb2dsZV9hbmFseXRpY3MJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCEF95YW5kZXhBbmFseXRpY3MFEHlhbmRleF9hbmFseXRpY3MJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCCF90d2l0dGVyBQd0d2l0dGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AglfdGVsZWdyYW0FCHRlbGVncmFtCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AgZfbm90ZXMFBW5vdGVzBQNuaWwJAAIBAlJFUlJST1IgISwgc2V0X3VzZXJfZGF0YSwgTUVTU0FHRTogc29ycnkgeW91IGFyZSBub3QgYWxsb3cgdG8gaW52b2tlIHRoaXMgZnVuYWN0aW9uAWkBEXNldF92ZXJpZmllZF91c2VyBgZ3YWxsZXQEbmFtZQd0d2l0dGVyCHRlbGVncmFtBWVtYWlsBW5vdGVzAwkBFGNoZWNrX2FkbWluc193YWxsZXRzAQkApQgBCAUBaQZjYWxsZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCCV92ZXJpZmllZAIDeWVzCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0Ag5fdmVyaWZpZWRfbmFtZQUEbmFtZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIRX3ZlcmlmaWVkX3R3aXR0ZXIFB3R3aXR0ZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCEl92ZXJpZmllZF90ZWxlZ3JhbQUIdGVsZWdyYW0JAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCD192ZXJpZmllZF9ub3RlcwUFbm90ZXMFA25pbAkAAgECVkVSUlJPUiAhLCBzZXRfdmVyaWZpZWRfdXNlciwgTUVTU0FHRTogc29ycnkgeW91IGFyZSBub3QgYWxsb3cgdG8gaW52b2tlIHRoaXMgZnVuYWN0aW9uAWkBFWFkZF9ibG9nX3RvX2Zhdm9yaXRlcwIGd2FsbGV0CmJsb2dfdHhfaWQDAwkAAAIJAKUIAQgFAWkGY2FsbGVyBQZ3YWxsZXQGCQEUY2hlY2tfYWRtaW5zX3dhbGxldHMBCQClCAEIBQFpBmNhbGxlcgQCaWQJAQ10cnlHZXRJbnRlZ2VyAQkArAICCQCsAgICBWJsb2dfBQpibG9nX3R4X2lkAgxfZmF2b3JpdGVfaWQEB3VzZXJfaWQJAQ10cnlHZXRJbnRlZ2VyAQkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDF9mYXZvcml0ZV9pZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0Ag9fYmxvZ19mYXZvcml0ZV8JAKQDAQUHdXNlcl9pZAUKYmxvZ190eF9pZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICAgVibG9nXwUKYmxvZ190eF9pZAIKX2Zhdm9yaXRlXwkApAMBBQJpZAUGd2FsbGV0CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIJAKwCAgIFYmxvZ18FCmJsb2dfdHhfaWQCDF9mYXZvcml0ZV9pZAkAZAIFAmlkAAEJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AgxfZmF2b3JpdGVfaWQJAGQCBQd1c2VyX2lkAAEFA25pbAkAAgECVUVSUlJPUiAhLCBhZGRfdG9fZmF2b3JpdGVzLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQEWYWRkX3N0b3J5X3RvX2Zhdm9yaXRlcwIGd2FsbGV0C3N0b3J5X3R4X2lkAwMJAAACCQClCAEIBQFpBmNhbGxlcgUGd2FsbGV0BgkBFGNoZWNrX2FkbWluc193YWxsZXRzAQkApQgBCAUBaQZjYWxsZXIEAmlkCQENdHJ5R2V0SW50ZWdlcgEJAKwCAgkArAICAgZzdG9yeV8FC3N0b3J5X3R4X2lkAgxfZmF2b3JpdGVfaWQEB3VzZXJfaWQJAQ10cnlHZXRJbnRlZ2VyAQkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDF9mYXZvcml0ZV9pZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AhBfc3RvcnlfZmF2b3JpdGVfCQCkAwEFB3VzZXJfaWQFC3N0b3J5X3R4X2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgICBnN0b3J5XwULc3RvcnlfdHhfaWQCCl9mYXZvcml0ZV8JAKQDAQUCaWQFBndhbGxldAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgICBnN0b3J5XwULc3RvcnlfdHhfaWQCDF9mYXZvcml0ZV9pZAkAZAIFAmlkAAEJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AgxfZmF2b3JpdGVfaWQJAGQCBQd1c2VyX2lkAAEFA25pbAkAAgECVUVSUlJPUiAhLCBhZGRfdG9fZmF2b3JpdGVzLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BAnR4AQZ2ZXJpZnkACQD0AwMIBQJ0eAlib2R5Qnl0ZXMJAJEDAggFAnR4BnByb29mcwAACAUCdHgPc2VuZGVyUHVibGljS2V5YAt9Ig==", "height": 2256768, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: 9yfdDthr1TXQMu3j8DLQB6C6XsemRk8KeDGuN2UAbN6H Next: EWPMDaUxc9Pjz8G933WpkCvHZX5DRRbs6ffsDjWCoAd Diff:
OldNewDifferences
2525
2626
2727 @Callable(i)
28-func set_user_data (wallet,name,image_link,cover_link,bio,google_analytics,yandex_analytics,notes) = if (if ((toString(i.caller) == wallet))
28+func add_blog (publisher,arweave_tx_id,signature,blog_cover,number_of_images,images) = if (if ((toString(i.caller) == publisher))
2929 then true
3030 else check_admins_wallets(toString(i.caller)))
31- then [StringEntry((("user_" + wallet) + "_joined"), "yes"), StringEntry((("user_" + wallet) + "_name"), name), StringEntry((("user_" + wallet) + "_imageLink"), image_link), StringEntry((("user_" + wallet) + "_coverLink"), cover_link), StringEntry((("user_" + wallet) + "_bio"), bio), StringEntry((("user_" + wallet) + "_googleAnalytics"), google_analytics), StringEntry((("user_" + wallet) + "_yandexAnalytics"), yandex_analytics), StringEntry((("user_" + wallet) + "_notes"), notes)]
31+ then {
32+ let tx_id = toUtf8String(i.transactionId)
33+[StringEntry((("blog_" + tx_id) + "_publisher"), publisher), StringEntry((("blog_" + tx_id) + "_arweave_tx_id"), arweave_tx_id), StringEntry((("blog_" + tx_id) + "_signature"), signature), StringEntry((("blog_" + tx_id) + "_blog_cover"), blog_cover), StringEntry((("blog_" + tx_id) + "_images"), images), IntegerEntry((("blog_" + tx_id) + "_number_of_images"), number_of_images)]
34+ }
35+ else throw("ERRROR !, add_blog, MESSAGE: sorry you are not allow to invoke this funaction")
36+
37+
38+
39+@Callable(i)
40+func set_user_data (wallet,name,image_link,cover_link,bio,google_analytics,twitter,telegram,yandex_analytics,notes) = if (if ((toString(i.caller) == wallet))
41+ then true
42+ else check_admins_wallets(toString(i.caller)))
43+ then [StringEntry((("user_" + wallet) + "_joined"), "yes"), StringEntry((("user_" + wallet) + "_name"), name), StringEntry((("user_" + wallet) + "_imageLink"), image_link), StringEntry((("user_" + wallet) + "_coverLink"), cover_link), StringEntry((("user_" + wallet) + "_bio"), bio), StringEntry((("user_" + wallet) + "_googleAnalytics"), google_analytics), StringEntry((("user_" + wallet) + "_yandexAnalytics"), yandex_analytics), StringEntry((("user_" + wallet) + "_twitter"), twitter), StringEntry((("user_" + wallet) + "_telegram"), telegram), StringEntry((("user_" + wallet) + "_notes"), notes)]
3244 else throw("ERRROR !, set_user_data, MESSAGE: sorry you are not allow to invoke this funaction")
3345
3446
3547
3648 @Callable(i)
37-func set_verified_user (wallet,name,notes) = if (check_admins_wallets(toString(i.caller)))
38- then [StringEntry((("user_" + wallet) + "_verified"), "yes"), StringEntry((("user_" + wallet) + "_verified_name"), name), StringEntry((("user_" + wallet) + "_verified_notes"), notes)]
49+func set_verified_user (wallet,name,twitter,telegram,email,notes) = if (check_admins_wallets(toString(i.caller)))
50+ then [StringEntry((("user_" + wallet) + "_verified"), "yes"), StringEntry((("user_" + wallet) + "_verified_name"), name), StringEntry((("user_" + wallet) + "_verified_twitter"), twitter), StringEntry((("user_" + wallet) + "_verified_telegram"), telegram), StringEntry((("user_" + wallet) + "_verified_notes"), notes)]
3951 else throw("ERRROR !, set_verified_user, MESSAGE: sorry you are not allow to invoke this funaction")
4052
4153
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let admin_wallet_one = "3N8x9mb481i2k6cG7Q9XUV3e5nzh1mdzsNy"
55
66 let admin_wallet_two = "3N3DCngjidivkJbTJwFTEvbYRTffCWVBLCL"
77
88 let admin_wallet_three = "3N91VBktoTPSBL6NkHRsAM1DLWH2T6qvQrs"
99
1010 func check_admins_wallets (user_wallet) = if (if (if ((user_wallet == admin_wallet_one))
1111 then true
1212 else (user_wallet == admin_wallet_two))
1313 then true
1414 else (user_wallet == admin_wallet_three))
1515 then true
1616 else false
1717
1818
1919 func tryGetInteger (key) = match getInteger(this, key) {
2020 case b: Int =>
2121 b
2222 case _ =>
2323 0
2424 }
2525
2626
2727 @Callable(i)
28-func set_user_data (wallet,name,image_link,cover_link,bio,google_analytics,yandex_analytics,notes) = if (if ((toString(i.caller) == wallet))
28+func add_blog (publisher,arweave_tx_id,signature,blog_cover,number_of_images,images) = if (if ((toString(i.caller) == publisher))
2929 then true
3030 else check_admins_wallets(toString(i.caller)))
31- then [StringEntry((("user_" + wallet) + "_joined"), "yes"), StringEntry((("user_" + wallet) + "_name"), name), StringEntry((("user_" + wallet) + "_imageLink"), image_link), StringEntry((("user_" + wallet) + "_coverLink"), cover_link), StringEntry((("user_" + wallet) + "_bio"), bio), StringEntry((("user_" + wallet) + "_googleAnalytics"), google_analytics), StringEntry((("user_" + wallet) + "_yandexAnalytics"), yandex_analytics), StringEntry((("user_" + wallet) + "_notes"), notes)]
31+ then {
32+ let tx_id = toUtf8String(i.transactionId)
33+[StringEntry((("blog_" + tx_id) + "_publisher"), publisher), StringEntry((("blog_" + tx_id) + "_arweave_tx_id"), arweave_tx_id), StringEntry((("blog_" + tx_id) + "_signature"), signature), StringEntry((("blog_" + tx_id) + "_blog_cover"), blog_cover), StringEntry((("blog_" + tx_id) + "_images"), images), IntegerEntry((("blog_" + tx_id) + "_number_of_images"), number_of_images)]
34+ }
35+ else throw("ERRROR !, add_blog, MESSAGE: sorry you are not allow to invoke this funaction")
36+
37+
38+
39+@Callable(i)
40+func set_user_data (wallet,name,image_link,cover_link,bio,google_analytics,twitter,telegram,yandex_analytics,notes) = if (if ((toString(i.caller) == wallet))
41+ then true
42+ else check_admins_wallets(toString(i.caller)))
43+ then [StringEntry((("user_" + wallet) + "_joined"), "yes"), StringEntry((("user_" + wallet) + "_name"), name), StringEntry((("user_" + wallet) + "_imageLink"), image_link), StringEntry((("user_" + wallet) + "_coverLink"), cover_link), StringEntry((("user_" + wallet) + "_bio"), bio), StringEntry((("user_" + wallet) + "_googleAnalytics"), google_analytics), StringEntry((("user_" + wallet) + "_yandexAnalytics"), yandex_analytics), StringEntry((("user_" + wallet) + "_twitter"), twitter), StringEntry((("user_" + wallet) + "_telegram"), telegram), StringEntry((("user_" + wallet) + "_notes"), notes)]
3244 else throw("ERRROR !, set_user_data, MESSAGE: sorry you are not allow to invoke this funaction")
3345
3446
3547
3648 @Callable(i)
37-func set_verified_user (wallet,name,notes) = if (check_admins_wallets(toString(i.caller)))
38- then [StringEntry((("user_" + wallet) + "_verified"), "yes"), StringEntry((("user_" + wallet) + "_verified_name"), name), StringEntry((("user_" + wallet) + "_verified_notes"), notes)]
49+func set_verified_user (wallet,name,twitter,telegram,email,notes) = if (check_admins_wallets(toString(i.caller)))
50+ then [StringEntry((("user_" + wallet) + "_verified"), "yes"), StringEntry((("user_" + wallet) + "_verified_name"), name), StringEntry((("user_" + wallet) + "_verified_twitter"), twitter), StringEntry((("user_" + wallet) + "_verified_telegram"), telegram), StringEntry((("user_" + wallet) + "_verified_notes"), notes)]
3951 else throw("ERRROR !, set_verified_user, MESSAGE: sorry you are not allow to invoke this funaction")
4052
4153
4254
4355 @Callable(i)
4456 func add_blog_to_favorites (wallet,blog_tx_id) = if (if ((toString(i.caller) == wallet))
4557 then true
4658 else check_admins_wallets(toString(i.caller)))
4759 then {
4860 let id = tryGetInteger((("blog_" + blog_tx_id) + "_favorite_id"))
4961 let user_id = tryGetInteger((("user_" + wallet) + "_favorite_id"))
5062 [StringEntry(((("user_" + wallet) + "_blog_favorite_") + toString(user_id)), blog_tx_id), StringEntry(((("blog_" + blog_tx_id) + "_favorite_") + toString(id)), wallet), IntegerEntry((("blog_" + blog_tx_id) + "_favorite_id"), (id + 1)), IntegerEntry((("user_" + wallet) + "_favorite_id"), (user_id + 1))]
5163 }
5264 else throw("ERRROR !, add_to_favorites, MESSAGE: sorry you are not allow to invoke this funaction")
5365
5466
5567
5668 @Callable(i)
5769 func add_story_to_favorites (wallet,story_tx_id) = if (if ((toString(i.caller) == wallet))
5870 then true
5971 else check_admins_wallets(toString(i.caller)))
6072 then {
6173 let id = tryGetInteger((("story_" + story_tx_id) + "_favorite_id"))
6274 let user_id = tryGetInteger((("user_" + wallet) + "_favorite_id"))
6375 [StringEntry(((("user_" + wallet) + "_story_favorite_") + toString(user_id)), story_tx_id), StringEntry(((("story_" + story_tx_id) + "_favorite_") + toString(id)), wallet), IntegerEntry((("story_" + story_tx_id) + "_favorite_id"), (id + 1)), IntegerEntry((("user_" + wallet) + "_favorite_id"), (user_id + 1))]
6476 }
6577 else throw("ERRROR !, add_to_favorites, MESSAGE: sorry you are not allow to invoke this funaction")
6678
6779
6880 @Verifier(tx)
6981 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
7082

github/deemru/w8io/169f3d6 
33.34 ms