tx · 9gFbD5Rbt8JXAv8eyXjMCMrszUMancBcXiFLtoRRVBBq

3MqxhXjG6DVDwFuLsaBz7sgt38iwHj9Da7f:  -0.00600000 Waves

2022.10.08 01:39 [2262511] smart account 3MqxhXjG6DVDwFuLsaBz7sgt38iwHj9Da7f > SELF 0.00000000 Waves

{ "type": 13, "id": "9gFbD5Rbt8JXAv8eyXjMCMrszUMancBcXiFLtoRRVBBq", "fee": 600000, "feeAssetId": null, "timestamp": 1665182370064, "version": 2, "chainId": 84, "sender": "3MqxhXjG6DVDwFuLsaBz7sgt38iwHj9Da7f", "senderPublicKey": "24F9Fvi53bZzs4e399kBtXVRriDkrJjjVpfMwrVBfX9N", "proofs": [ "5UHsPY3reGqBmbe6bKMHVEZkGW1fsctXva5m2Fpi2LDSfMaZX536dftdGAYU4NyuQHhz8hewG1f8zggdz9jtpnVD" ], "script": "base64:BgJCCAISBwoFCAgICAgSCwoJCAgICAgICAgIEgQKAggIEgwKCggICAgICAgICAgSCAoGCAgICAgIEgQKAggIEgQKAggIBQAQYWRtaW5fd2FsbGV0X29uZQIjM044eDltYjQ4MWkyazZjRzdROVhVVjNlNW56aDFtZHpzTnkAEGFkbWluX3dhbGxldF90d28CIzNOM0RDbmdqaWRpdmtKYlRKd0ZURXZiWVJUZmZDV1ZCTENMABJhZG1pbl93YWxsZXRfdGhyZWUCIzNOOTFWQmt0b1RQU0JMNk5rSFJzQU0xRExXSDJUNnF2UXJzARRjaGVja19hZG1pbnNfd2FsbGV0cwELdXNlcl93YWxsZXQDAwMJAAACBQt1c2VyX3dhbGxldAUQYWRtaW5fd2FsbGV0X29uZQYJAAACBQt1c2VyX3dhbGxldAUQYWRtaW5fd2FsbGV0X3R3bwYJAAACBQt1c2VyX3dhbGxldAUSYWRtaW5fd2FsbGV0X3RocmVlBgcBDXRyeUdldEludGVnZXIBA2tleQQHJG1hdGNoMAkAmggCBQR0aGlzBQNrZXkDCQABAgUHJG1hdGNoMAIDSW50BAFiBQckbWF0Y2gwBQFiAAAHAWkBCGFkZF9ibG9nBQlwdWJsaXNoZXIFdGl0ZWwNYXJ3ZWF2ZV90eF9pZAlzaWduYXR1cmUKYmxvZ19jb3ZlcgMDCQAAAgkApQgBCAUBaQZjYWxsZXIFCXB1Ymxpc2hlcgYJARRjaGVja19hZG1pbnNfd2FsbGV0cwEJAKUIAQgFAWkGY2FsbGVyBAV0eF9pZAkAsAkBCAUBaQ10cmFuc2FjdGlvbklkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgVibG9nXwUFdHhfaWQCCl9wdWJsaXNoZXIFCXB1Ymxpc2hlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFYmxvZ18FBXR4X2lkAg5fYXJ3ZWF2ZV90eF9pZAUNYXJ3ZWF2ZV90eF9pZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFYmxvZ18FBXR4X2lkAgpfc2lnbmF0dXJlBQlzaWduYXR1cmUJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBWJsb2dfBQV0eF9pZAILX2Jsb2dfY292ZXIFCmJsb2dfY292ZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBWJsb2dfBQV0eF9pZAIGX3RpdGVsBQV0aXRlbAUDbmlsCQACAQJNRVJSUk9SICEsIGFkZF9ibG9nLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQEJYWRkX3N0b3J5CQlwdWJsaXNoZXIFdGl0ZWwNYXJ3ZWF2ZV90eF9pZAlzaWduYXR1cmULc3RvcnlfY292ZXILZGVzY3JpcHRpb24EdGFncwhsYW5ndWFnZQljYXRlZ29yeXMDAwkAAAIJAKUIAQgFAWkGY2FsbGVyBQlwdWJsaXNoZXIGCQEUY2hlY2tfYWRtaW5zX3dhbGxldHMBCQClCAEIBQFpBmNhbGxlcgQFdHhfaWQJALAJAQgFAWkNdHJhbnNhY3Rpb25JZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQV0eF9pZAIKX3B1Ymxpc2hlcgUJcHVibGlzaGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAg5fYXJ3ZWF2ZV90eF9pZAUNYXJ3ZWF2ZV90eF9pZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQV0eF9pZAIKX3NpZ25hdHVyZQUJc2lnbmF0dXJlCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgxfc3RvcnlfY292ZXIFC3N0b3J5X2NvdmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgZfdGl0ZWwFBXRpdGVsCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgxfZGVzY3JpcHRpb24FC2Rlc2NyaXB0aW9uCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgVfdGFncwUEdGFncwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQV0eF9pZAIJX2xhbmd1YWdlBQhsYW5ndWFnZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQV0eF9pZAIKX2NhdGVnb3J5cwUJY2F0ZWdvcnlzBQNuaWwJAAIBAk5FUlJST1IgISwgYWRkX3N0b3J5LCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQELYWRkX2NoYXB0ZXICC3N0b3J5X3R4X2lkFWNoYXB0ZXJfYXJ3ZWF2ZV90eF9pZAQPbGFzdF9jaGFwdGVyX2lkCQENdHJ5R2V0SW50ZWdlcgEJAKwCAgkArAICAgZTdG9yeV8FC3N0b3J5X3R4X2lkAhBfbGFzdF9jaGFwdGVyX2lkBAV0eF9pZAkAsAkBCAUBaQ10cmFuc2FjdGlvbklkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgICBnN0b3J5XwULc3RvcnlfdHhfaWQCCV9jaGFwdGVyXwkApAMBBQ9sYXN0X2NoYXB0ZXJfaWQFBXR4X2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAghjaGFwdGVyXwUFdHhfaWQCDl9hcndlYXZlX3R4X2lkBRVjaGFwdGVyX2Fyd2VhdmVfdHhfaWQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICCGNoYXB0ZXJfBQV0eF9pZAIMX3N0b3J5X3R4X2lkBQtzdG9yeV90eF9pZAkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgICCGNoYXB0ZXJfBQV0eF9pZAIDX2lkBQ9sYXN0X2NoYXB0ZXJfaWQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICAgZTdG9yeV8FC3N0b3J5X3R4X2lkAhBfbGFzdF9jaGFwdGVyX2lkCQBkAgUPbGFzdF9jaGFwdGVyX2lkAAEFA25pbAFpAQ1zZXRfdXNlcl9kYXRhCgZ3YWxsZXQEbmFtZQppbWFnZV9saW5rCmNvdmVyX2xpbmsDYmlvEGdvb2dsZV9hbmFseXRpY3MHdHdpdHRlcgh0ZWxlZ3JhbRB5YW5kZXhfYW5hbHl0aWNzBW5vdGVzAwMJAAACCQClCAEIBQFpBmNhbGxlcgUGd2FsbGV0BgkBFGNoZWNrX2FkbWluc193YWxsZXRzAQkApQgBCAUBaQZjYWxsZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCB19qb2luZWQCA3llcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIFX25hbWUFBG5hbWUJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCCl9pbWFnZUxpbmsFCmltYWdlX2xpbmsJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCCl9jb3ZlckxpbmsFCmNvdmVyX2xpbmsJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCBF9iaW8FA2JpbwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIQX2dvb2dsZUFuYWx5dGljcwUQZ29vZ2xlX2FuYWx5dGljcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIQX3lhbmRleEFuYWx5dGljcwUQeWFuZGV4X2FuYWx5dGljcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIIX3R3aXR0ZXIFB3R3aXR0ZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCCV90ZWxlZ3JhbQUIdGVsZWdyYW0JAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCBl9ub3RlcwUFbm90ZXMFA25pbAkAAgECUkVSUlJPUiAhLCBzZXRfdXNlcl9kYXRhLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQERc2V0X3ZlcmlmaWVkX3VzZXIGBndhbGxldARuYW1lB3R3aXR0ZXIIdGVsZWdyYW0FZW1haWwFbm90ZXMDCQEUY2hlY2tfYWRtaW5zX3dhbGxldHMBCQClCAEIBQFpBmNhbGxlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIJX3ZlcmlmaWVkAgN5ZXMJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDl92ZXJpZmllZF9uYW1lBQRuYW1lCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AhFfdmVyaWZpZWRfdHdpdHRlcgUHdHdpdHRlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAISX3ZlcmlmaWVkX3RlbGVncmFtBQh0ZWxlZ3JhbQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIPX3ZlcmlmaWVkX25vdGVzBQVub3RlcwUDbmlsCQACAQJWRVJSUk9SICEsIHNldF92ZXJpZmllZF91c2VyLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQEVYWRkX2Jsb2dfdG9fZmF2b3JpdGVzAgZ3YWxsZXQKYmxvZ190eF9pZAMDCQAAAgkApQgBCAUBaQZjYWxsZXIFBndhbGxldAYJARRjaGVja19hZG1pbnNfd2FsbGV0cwEJAKUIAQgFAWkGY2FsbGVyBAJpZAkBDXRyeUdldEludGVnZXIBCQCsAgIJAKwCAgIFYmxvZ18FCmJsb2dfdHhfaWQCDF9mYXZvcml0ZV9pZAQHdXNlcl9pZAkBDXRyeUdldEludGVnZXIBCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIMX2Zhdm9yaXRlX2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCD19ibG9nX2Zhdm9yaXRlXwkApAMBBQd1c2VyX2lkBQpibG9nX3R4X2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgICBWJsb2dfBQpibG9nX3R4X2lkAgpfZmF2b3JpdGVfCQCkAwEFAmlkBQZ3YWxsZXQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICAgVibG9nXwUKYmxvZ190eF9pZAIMX2Zhdm9yaXRlX2lkCQBkAgUCaWQAAQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDF9mYXZvcml0ZV9pZAkAZAIFB3VzZXJfaWQAAQUDbmlsCQACAQJVRVJSUk9SICEsIGFkZF90b19mYXZvcml0ZXMsIE1FU1NBR0U6IHNvcnJ5IHlvdSBhcmUgbm90IGFsbG93IHRvIGludm9rZSB0aGlzIGZ1bmFjdGlvbgFpARZhZGRfc3RvcnlfdG9fZmF2b3JpdGVzAgZ3YWxsZXQLc3RvcnlfdHhfaWQDAwkAAAIJAKUIAQgFAWkGY2FsbGVyBQZ3YWxsZXQGCQEUY2hlY2tfYWRtaW5zX3dhbGxldHMBCQClCAEIBQFpBmNhbGxlcgQCaWQJAQ10cnlHZXRJbnRlZ2VyAQkArAICCQCsAgICBnN0b3J5XwULc3RvcnlfdHhfaWQCDF9mYXZvcml0ZV9pZAQHdXNlcl9pZAkBDXRyeUdldEludGVnZXIBCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIMX2Zhdm9yaXRlX2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCEF9zdG9yeV9mYXZvcml0ZV8JAKQDAQUHdXNlcl9pZAULc3RvcnlfdHhfaWQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJAKwCAgIGc3RvcnlfBQtzdG9yeV90eF9pZAIKX2Zhdm9yaXRlXwkApAMBBQJpZAUGd2FsbGV0CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQtzdG9yeV90eF9pZAIMX2Zhdm9yaXRlX2lkCQBkAgUCaWQAAQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDF9mYXZvcml0ZV9pZAkAZAIFB3VzZXJfaWQAAQUDbmlsCQACAQJVRVJSUk9SICEsIGFkZF90b19mYXZvcml0ZXMsIE1FU1NBR0U6IHNvcnJ5IHlvdSBhcmUgbm90IGFsbG93IHRvIGludm9rZSB0aGlzIGZ1bmFjdGlvbgECdHgBBnZlcmlmeQAJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXkkgJA3", "height": 2262511, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: EWPMDaUxc9Pjz8G933WpkCvHZX5DRRbs6ffsDjWCoAd Next: FTDeEMCBiZ2Df13k3oF6Mn7vFXZcqdVxtrTattuXxh9T Diff:
OldNewDifferences
2525
2626
2727 @Callable(i)
28-func add_blog (publisher,arweave_tx_id,signature,blog_cover,number_of_images,images) = if (if ((toString(i.caller) == publisher))
28+func add_blog (publisher,titel,arweave_tx_id,signature,blog_cover) = if (if ((toString(i.caller) == publisher))
2929 then true
3030 else check_admins_wallets(toString(i.caller)))
3131 then {
3232 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)]
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) + "_titel"), titel)]
3434 }
3535 else throw("ERRROR !, add_blog, MESSAGE: sorry you are not allow to invoke this funaction")
36+
37+
38+
39+@Callable(i)
40+func add_story (publisher,titel,arweave_tx_id,signature,story_cover,description,tags,language,categorys) = if (if ((toString(i.caller) == publisher))
41+ then true
42+ else check_admins_wallets(toString(i.caller)))
43+ then {
44+ let tx_id = toUtf8String(i.transactionId)
45+[StringEntry((("story_" + tx_id) + "_publisher"), publisher), StringEntry((("story_" + tx_id) + "_arweave_tx_id"), arweave_tx_id), StringEntry((("story_" + tx_id) + "_signature"), signature), StringEntry((("story_" + tx_id) + "_story_cover"), story_cover), StringEntry((("story_" + tx_id) + "_titel"), titel), StringEntry((("story_" + tx_id) + "_description"), description), StringEntry((("story_" + tx_id) + "_tags"), tags), StringEntry((("story_" + tx_id) + "_language"), language), StringEntry((("story_" + tx_id) + "_categorys"), categorys)]
46+ }
47+ else throw("ERRROR !, add_story, MESSAGE: sorry you are not allow to invoke this funaction")
48+
49+
50+
51+@Callable(i)
52+func add_chapter (story_tx_id,chapter_arweave_tx_id) = {
53+ let last_chapter_id = tryGetInteger((("Story_" + story_tx_id) + "_last_chapter_id"))
54+ let tx_id = toUtf8String(i.transactionId)
55+[StringEntry(((("story_" + story_tx_id) + "_chapter_") + toString(last_chapter_id)), tx_id), StringEntry((("chapter_" + tx_id) + "_arweave_tx_id"), chapter_arweave_tx_id), StringEntry((("chapter_" + tx_id) + "_story_tx_id"), story_tx_id), IntegerEntry((("chapter_" + tx_id) + "_id"), last_chapter_id), IntegerEntry((("Story_" + story_tx_id) + "_last_chapter_id"), (last_chapter_id + 1))]
56+ }
3657
3758
3859
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 add_blog (publisher,arweave_tx_id,signature,blog_cover,number_of_images,images) = if (if ((toString(i.caller) == publisher))
28+func add_blog (publisher,titel,arweave_tx_id,signature,blog_cover) = if (if ((toString(i.caller) == publisher))
2929 then true
3030 else check_admins_wallets(toString(i.caller)))
3131 then {
3232 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)]
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) + "_titel"), titel)]
3434 }
3535 else throw("ERRROR !, add_blog, MESSAGE: sorry you are not allow to invoke this funaction")
36+
37+
38+
39+@Callable(i)
40+func add_story (publisher,titel,arweave_tx_id,signature,story_cover,description,tags,language,categorys) = if (if ((toString(i.caller) == publisher))
41+ then true
42+ else check_admins_wallets(toString(i.caller)))
43+ then {
44+ let tx_id = toUtf8String(i.transactionId)
45+[StringEntry((("story_" + tx_id) + "_publisher"), publisher), StringEntry((("story_" + tx_id) + "_arweave_tx_id"), arweave_tx_id), StringEntry((("story_" + tx_id) + "_signature"), signature), StringEntry((("story_" + tx_id) + "_story_cover"), story_cover), StringEntry((("story_" + tx_id) + "_titel"), titel), StringEntry((("story_" + tx_id) + "_description"), description), StringEntry((("story_" + tx_id) + "_tags"), tags), StringEntry((("story_" + tx_id) + "_language"), language), StringEntry((("story_" + tx_id) + "_categorys"), categorys)]
46+ }
47+ else throw("ERRROR !, add_story, MESSAGE: sorry you are not allow to invoke this funaction")
48+
49+
50+
51+@Callable(i)
52+func add_chapter (story_tx_id,chapter_arweave_tx_id) = {
53+ let last_chapter_id = tryGetInteger((("Story_" + story_tx_id) + "_last_chapter_id"))
54+ let tx_id = toUtf8String(i.transactionId)
55+[StringEntry(((("story_" + story_tx_id) + "_chapter_") + toString(last_chapter_id)), tx_id), StringEntry((("chapter_" + tx_id) + "_arweave_tx_id"), chapter_arweave_tx_id), StringEntry((("chapter_" + tx_id) + "_story_tx_id"), story_tx_id), IntegerEntry((("chapter_" + tx_id) + "_id"), last_chapter_id), IntegerEntry((("Story_" + story_tx_id) + "_last_chapter_id"), (last_chapter_id + 1))]
56+ }
3657
3758
3859
3960 @Callable(i)
4061 func set_user_data (wallet,name,image_link,cover_link,bio,google_analytics,twitter,telegram,yandex_analytics,notes) = if (if ((toString(i.caller) == wallet))
4162 then true
4263 else check_admins_wallets(toString(i.caller)))
4364 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)]
4465 else throw("ERRROR !, set_user_data, MESSAGE: sorry you are not allow to invoke this funaction")
4566
4667
4768
4869 @Callable(i)
4970 func set_verified_user (wallet,name,twitter,telegram,email,notes) = if (check_admins_wallets(toString(i.caller)))
5071 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)]
5172 else throw("ERRROR !, set_verified_user, MESSAGE: sorry you are not allow to invoke this funaction")
5273
5374
5475
5576 @Callable(i)
5677 func add_blog_to_favorites (wallet,blog_tx_id) = if (if ((toString(i.caller) == wallet))
5778 then true
5879 else check_admins_wallets(toString(i.caller)))
5980 then {
6081 let id = tryGetInteger((("blog_" + blog_tx_id) + "_favorite_id"))
6182 let user_id = tryGetInteger((("user_" + wallet) + "_favorite_id"))
6283 [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))]
6384 }
6485 else throw("ERRROR !, add_to_favorites, MESSAGE: sorry you are not allow to invoke this funaction")
6586
6687
6788
6889 @Callable(i)
6990 func add_story_to_favorites (wallet,story_tx_id) = if (if ((toString(i.caller) == wallet))
7091 then true
7192 else check_admins_wallets(toString(i.caller)))
7293 then {
7394 let id = tryGetInteger((("story_" + story_tx_id) + "_favorite_id"))
7495 let user_id = tryGetInteger((("user_" + wallet) + "_favorite_id"))
7596 [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))]
7697 }
7798 else throw("ERRROR !, add_to_favorites, MESSAGE: sorry you are not allow to invoke this funaction")
7899
79100
80101 @Verifier(tx)
81102 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
82103

github/deemru/w8io/169f3d6 
33.37 ms