tx · BqfhcdR9oTcC49QSDQt6k6pKk5XAxGZHJin2XqjTdfSh

3N2kVUxYqFz4rHNgnVr7ffhsnC7DptJ1BzH:  -0.01000000 Waves

2023.04.21 20:47 [2544635] smart account 3N2kVUxYqFz4rHNgnVr7ffhsnC7DptJ1BzH > SELF 0.00000000 Waves

{ "type": 13, "id": "BqfhcdR9oTcC49QSDQt6k6pKk5XAxGZHJin2XqjTdfSh", "fee": 1000000, "feeAssetId": null, "timestamp": 1682099279924, "version": 2, "chainId": 84, "sender": "3N2kVUxYqFz4rHNgnVr7ffhsnC7DptJ1BzH", "senderPublicKey": "8cCvpHrqwPyT7CYYANjtE4ZUgLzCDCqFDMVAX5RRZMPN", "proofs": [ "3VqhQRkTG1KZnyJFi3nqHktjGLXUHyiXncF8kCy2yH6iMeu7Xe8hhzeWpJxMdLicBRLHu5581VLFLtU5ph86a1Mk" ], "script": "base64:BgJNCAISBwoFCAgICAgSDAoKCAgICAgICAgICBIECgIICBIMCgoICAgICAgICAgIEggKBggICAgICBIDCgEIEgMKAQgSBAoCCAgSBAoCCAgFABBhZG1pbl93YWxsZXRfb25lAiMzTXBEZkRUMzU5cVNTbU5GWm5NZW9QUXB5SkEyVTFLNTF1NQAQYWRtaW5fd2FsbGV0X3R3bwIjM04zRENuZ2ppZGl2a0piVEp3RlRFdmJZUlRmZkNXVkJMQ0wAEmFkbWluX3dhbGxldF90aHJlZQIjM044eDltYjQ4MWkyazZjRzdROVhVVjNlNW56aDFtZHpzTnkBFGNoZWNrX2FkbWluc193YWxsZXRzAQt1c2VyX3dhbGxldAMDAwkAAAIFC3VzZXJfd2FsbGV0BRBhZG1pbl93YWxsZXRfb25lBgkAAAIFC3VzZXJfd2FsbGV0BRBhZG1pbl93YWxsZXRfdHdvBgkAAAIFC3VzZXJfd2FsbGV0BRJhZG1pbl93YWxsZXRfdGhyZWUGBwENdHJ5R2V0SW50ZWdlcgEDa2V5BAckbWF0Y2gwCQCaCAIFBHRoaXMFA2tleQMJAAECBQckbWF0Y2gwAgNJbnQEAWIFByRtYXRjaDAFAWIAAAkBaQEIYWRkX2Jsb2cFCXB1Ymxpc2hlcgV0aXRlbA1hcndlYXZlX3R4X2lkCXNpZ25hdHVyZQpibG9nX2NvdmVyAwMJAAACCQClCAEIBQFpBmNhbGxlcgUJcHVibGlzaGVyBgkBFGNoZWNrX2FkbWluc193YWxsZXRzAQkApQgBCAUBaQZjYWxsZXIEBXR4X2lkCQDYBAEIBQFpDXRyYW5zYWN0aW9uSWQEBWJsb2NrBQlsYXN0QmxvY2sEDHB1Ymxpc2hfdGltZQgFBWJsb2NrCXRpbWVzdGFtcAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFYmxvZ18FBXR4X2lkAgpfcHVibGlzaGVyBQlwdWJsaXNoZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBWJsb2dfBQV0eF9pZAIOX2Fyd2VhdmVfdHhfaWQFDWFyd2VhdmVfdHhfaWQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBWJsb2dfBQV0eF9pZAIKX3NpZ25hdHVyZQUJc2lnbmF0dXJlCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgVibG9nXwUFdHhfaWQCC19ibG9nX2NvdmVyBQpibG9nX2NvdmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgVibG9nXwUFdHhfaWQCBl90aXRlbAUFdGl0ZWwJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICAgVibG9nXwUFdHhfaWQCDV9wdWJsaXNoX3RpbWUFDHB1Ymxpc2hfdGltZQUDbmlsCQACAQJNRVJSUk9SICEsIGFkZF9ibG9nLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQEJYWRkX3N0b3J5CglwdWJsaXNoZXIFdGl0ZWwNYXJ3ZWF2ZV90eF9pZAlzaWduYXR1cmULc3RvcnlfY292ZXILZGVzY3JpcHRpb24EdGFncwhsYW5ndWFnZQljYXRlZ29yeXMGc3RhdHVzAwMJAAACCQClCAEIBQFpBmNhbGxlcgUJcHVibGlzaGVyBgkBFGNoZWNrX2FkbWluc193YWxsZXRzAQkApQgBCAUBaQZjYWxsZXIEBXR4X2lkCQDYBAEIBQFpDXRyYW5zYWN0aW9uSWQEBWJsb2NrBQlsYXN0QmxvY2sEDHB1Ymxpc2hfdGltZQgFBWJsb2NrCXRpbWVzdGFtcAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQV0eF9pZAIKX3B1Ymxpc2hlcgUJcHVibGlzaGVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAg5fYXJ3ZWF2ZV90eF9pZAUNYXJ3ZWF2ZV90eF9pZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQV0eF9pZAIKX3NpZ25hdHVyZQUJc2lnbmF0dXJlCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgxfc3RvcnlfY292ZXIFC3N0b3J5X2NvdmVyCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgZfdGl0ZWwFBXRpdGVsCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgxfZGVzY3JpcHRpb24FC2Rlc2NyaXB0aW9uCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgVfdGFncwUEdGFncwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQV0eF9pZAIJX2xhbmd1YWdlBQhsYW5ndWFnZQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQV0eF9pZAIKX2NhdGVnb3J5cwUJY2F0ZWdvcnlzCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAgdfc3RhdHVzBQZzdGF0dXMJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICAgZzdG9yeV8FBXR4X2lkAg1fcHVibGlzaF90aW1lBQxwdWJsaXNoX3RpbWUFA25pbAkAAgECTkVSUlJPUiAhLCBhZGRfc3RvcnksIE1FU1NBR0U6IHNvcnJ5IHlvdSBhcmUgbm90IGFsbG93IHRvIGludm9rZSB0aGlzIGZ1bmFjdGlvbgFpAQthZGRfY2hhcHRlcgILc3RvcnlfdHhfaWQVY2hhcHRlcl9hcndlYXZlX3R4X2lkBA9sYXN0X2NoYXB0ZXJfaWQJAQ10cnlHZXRJbnRlZ2VyAQkArAICCQCsAgICBlN0b3J5XwULc3RvcnlfdHhfaWQCEF9sYXN0X2NoYXB0ZXJfaWQEBXR4X2lkCQDYBAEIBQFpDXRyYW5zYWN0aW9uSWQEBWJsb2NrBQlsYXN0QmxvY2sEDHB1Ymxpc2hfdGltZQgFBWJsb2NrCXRpbWVzdGFtcAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICAgZzdG9yeV8FC3N0b3J5X3R4X2lkAglfY2hhcHRlcl8JAKQDAQUPbGFzdF9jaGFwdGVyX2lkBQV0eF9pZAkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIIY2hhcHRlcl8FBXR4X2lkAg5fYXJ3ZWF2ZV90eF9pZAUVY2hhcHRlcl9hcndlYXZlX3R4X2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAghjaGFwdGVyXwUFdHhfaWQCDF9zdG9yeV90eF9pZAULc3RvcnlfdHhfaWQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICAghjaGFwdGVyXwUFdHhfaWQCA19pZAUPbGFzdF9jaGFwdGVyX2lkCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQtzdG9yeV90eF9pZAIQX2xhc3RfY2hhcHRlcl9pZAkAZAIFD2xhc3RfY2hhcHRlcl9pZAABCQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIJAKwCAgIIY2hhcHRlcl8FBXR4X2lkAg1fcHVibGlzaF90aW1lBQxwdWJsaXNoX3RpbWUFA25pbAFpAQ1zZXRfdXNlcl9kYXRhCgZ3YWxsZXQEbmFtZQppbWFnZV9saW5rCmNvdmVyX2xpbmsDYmlvEGdvb2dsZV9hbmFseXRpY3MHdHdpdHRlcgh0ZWxlZ3JhbRB5YW5kZXhfYW5hbHl0aWNzBW5vdGVzAwMJAAACCQClCAEIBQFpBmNhbGxlcgUGd2FsbGV0BgkBFGNoZWNrX2FkbWluc193YWxsZXRzAQkApQgBCAUBaQZjYWxsZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCB19qb2luZWQCA3llcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIFX25hbWUFBG5hbWUJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCCl9pbWFnZUxpbmsFCmltYWdlX2xpbmsJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCCl9jb3ZlckxpbmsFCmNvdmVyX2xpbmsJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCBF9iaW8FA2JpbwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIQX2dvb2dsZUFuYWx5dGljcwUQZ29vZ2xlX2FuYWx5dGljcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIQX3lhbmRleEFuYWx5dGljcwUQeWFuZGV4X2FuYWx5dGljcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIIX3R3aXR0ZXIFB3R3aXR0ZXIJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCCV90ZWxlZ3JhbQUIdGVsZWdyYW0JAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCBl9ub3RlcwUFbm90ZXMFA25pbAkAAgECUkVSUlJPUiAhLCBzZXRfdXNlcl9kYXRhLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQERc2V0X3ZlcmlmaWVkX3VzZXIGBndhbGxldARuYW1lB3R3aXR0ZXIIdGVsZWdyYW0FZW1haWwFbm90ZXMDCQEUY2hlY2tfYWRtaW5zX3dhbGxldHMBCQClCAEIBQFpBmNhbGxlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIJX3ZlcmlmaWVkAgN5ZXMJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDl92ZXJpZmllZF9uYW1lBQRuYW1lCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0AhFfdmVyaWZpZWRfdHdpdHRlcgUHdHdpdHRlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAISX3ZlcmlmaWVkX3RlbGVncmFtBQh0ZWxlZ3JhbQkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIPX3ZlcmlmaWVkX25vdGVzBQVub3RlcwUDbmlsCQACAQJWRVJSUk9SICEsIHNldF92ZXJpZmllZF91c2VyLCBNRVNTQUdFOiBzb3JyeSB5b3UgYXJlIG5vdCBhbGxvdyB0byBpbnZva2UgdGhpcyBmdW5hY3Rpb24BaQELZm9sbG93X3VzZXIBBndhbGxldAQGY2FsbGVyCQClCAEIBQFpBmNhbGxlcgkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICAgV1c2VyXwUGd2FsbGV0Ag1fZm9sbG93ZWRfYnlfBQZjYWxsZXICA3llcwkAzAgCCQELU3RyaW5nRW50cnkCCQCsAgIJAKwCAgkArAICAgV1c2VyXwUGY2FsbGVyAghfZm9sbG93XwUGd2FsbGV0AgN5ZXMFA25pbAFpAQ51bl9mb2xsb3dfdXNlcgEGd2FsbGV0BAZjYWxsZXIJAKUIAQgFAWkGY2FsbGVyCQDMCAIJAQtEZWxldGVFbnRyeQEJAKwCAgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDV9mb2xsb3dlZF9ieV8FBmNhbGxlcgkAzAgCCQELRGVsZXRlRW50cnkBCQCsAgIJAKwCAgkArAICAgV1c2VyXwUGY2FsbGVyAghfZm9sbG93XwUGd2FsbGV0BQNuaWwBaQEVYWRkX2Jsb2dfdG9fZmF2b3JpdGVzAgZ3YWxsZXQKYmxvZ190eF9pZAMDCQAAAgkApQgBCAUBaQZjYWxsZXIFBndhbGxldAYJARRjaGVja19hZG1pbnNfd2FsbGV0cwEJAKUIAQgFAWkGY2FsbGVyBAJpZAkBDXRyeUdldEludGVnZXIBCQCsAgIJAKwCAgIFYmxvZ18FCmJsb2dfdHhfaWQCDF9mYXZvcml0ZV9pZAQHdXNlcl9pZAkBDXRyeUdldEludGVnZXIBCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIMX2Zhdm9yaXRlX2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCD19ibG9nX2Zhdm9yaXRlXwkApAMBBQd1c2VyX2lkBQpibG9nX3R4X2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgICBWJsb2dfBQpibG9nX3R4X2lkAgpfZmF2b3JpdGVfCQCkAwEFAmlkBQZ3YWxsZXQJAMwIAgkBDEludGVnZXJFbnRyeQIJAKwCAgkArAICAgVibG9nXwUKYmxvZ190eF9pZAIMX2Zhdm9yaXRlX2lkCQBkAgUCaWQAAQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDF9mYXZvcml0ZV9pZAkAZAIFB3VzZXJfaWQAAQUDbmlsCQACAQJVRVJSUk9SICEsIGFkZF90b19mYXZvcml0ZXMsIE1FU1NBR0U6IHNvcnJ5IHlvdSBhcmUgbm90IGFsbG93IHRvIGludm9rZSB0aGlzIGZ1bmFjdGlvbgFpARZhZGRfc3RvcnlfdG9fZmF2b3JpdGVzAgZ3YWxsZXQLc3RvcnlfdHhfaWQDAwkAAAIJAKUIAQgFAWkGY2FsbGVyBQZ3YWxsZXQGCQEUY2hlY2tfYWRtaW5zX3dhbGxldHMBCQClCAEIBQFpBmNhbGxlcgQCaWQJAQ10cnlHZXRJbnRlZ2VyAQkArAICCQCsAgICBnN0b3J5XwULc3RvcnlfdHhfaWQCDF9mYXZvcml0ZV9pZAQHdXNlcl9pZAkBDXRyeUdldEludGVnZXIBCQCsAgIJAKwCAgIFdXNlcl8FBndhbGxldAIMX2Zhdm9yaXRlX2lkCQDMCAIJAQtTdHJpbmdFbnRyeQIJAKwCAgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCEF9zdG9yeV9mYXZvcml0ZV8JAKQDAQUHdXNlcl9pZAULc3RvcnlfdHhfaWQJAMwIAgkBC1N0cmluZ0VudHJ5AgkArAICCQCsAgIJAKwCAgIGc3RvcnlfBQtzdG9yeV90eF9pZAIKX2Zhdm9yaXRlXwkApAMBBQJpZAUGd2FsbGV0CQDMCAIJAQxJbnRlZ2VyRW50cnkCCQCsAgIJAKwCAgIGc3RvcnlfBQtzdG9yeV90eF9pZAIMX2Zhdm9yaXRlX2lkCQBkAgUCaWQAAQkAzAgCCQEMSW50ZWdlckVudHJ5AgkArAICCQCsAgICBXVzZXJfBQZ3YWxsZXQCDF9mYXZvcml0ZV9pZAkAZAIFB3VzZXJfaWQAAQUDbmlsCQACAQJVRVJSUk9SICEsIGFkZF90b19mYXZvcml0ZXMsIE1FU1NBR0U6IHNvcnJ5IHlvdSBhcmUgbm90IGFsbG93IHRvIGludm9rZSB0aGlzIGZ1bmFjdGlvbgECdHgBBnZlcmlmeQAJAPQDAwgFAnR4CWJvZHlCeXRlcwkAkQMCCAUCdHgGcHJvb2ZzAAAIBQJ0eA9zZW5kZXJQdWJsaWNLZXncRKUn", "height": 2544635, "applicationStatus": "succeeded", "spentComplexity": 0 } View: original | compacted Prev: HV97ECnYtakj1gAo33mTXs6tGsdTQvbRbYvNDsQWgwCv Next: FzzqsauT3ayQkeVhc6RQ79yZnK8XnUZ2bcH5X7FSEaxz Diff:
OldNewDifferences
8282 @Callable(i)
8383 func follow_user (wallet) = {
8484 let caller = toString(i.caller)
85-[StringEntry(((("user_" + wallet) + "_followed_by_") + caller), "yes"), StringEntry(((("user_" + caller) + "_follow") + wallet), "yes")]
85+[StringEntry(((("user_" + wallet) + "_followed_by_") + caller), "yes"), StringEntry(((("user_" + caller) + "_follow_") + wallet), "yes")]
8686 }
8787
8888
9090 @Callable(i)
9191 func un_follow_user (wallet) = {
9292 let caller = toString(i.caller)
93-[DeleteEntry(((("user_" + wallet) + "_followed_by_") + caller)), DeleteEntry(((("user_" + caller) + "_follow") + wallet))]
93+[DeleteEntry(((("user_" + wallet) + "_followed_by_") + caller)), DeleteEntry(((("user_" + caller) + "_follow_") + wallet))]
9494 }
9595
9696
Full:
OldNewDifferences
11 {-# STDLIB_VERSION 6 #-}
22 {-# SCRIPT_TYPE ACCOUNT #-}
33 {-# CONTENT_TYPE DAPP #-}
44 let admin_wallet_one = "3MpDfDT359qSSmNFZnMeoPQpyJA2U1K51u5"
55
66 let admin_wallet_two = "3N3DCngjidivkJbTJwFTEvbYRTffCWVBLCL"
77
88 let admin_wallet_three = "3N8x9mb481i2k6cG7Q9XUV3e5nzh1mdzsNy"
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)
2828 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 = toBase58String(i.transactionId)
3333 let block = lastBlock
3434 let publish_time = block.timestamp
3535 [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), IntegerEntry((("blog_" + tx_id) + "_publish_time"), publish_time)]
3636 }
3737 else throw("ERRROR !, add_blog, MESSAGE: sorry you are not allow to invoke this funaction")
3838
3939
4040
4141 @Callable(i)
4242 func add_story (publisher,titel,arweave_tx_id,signature,story_cover,description,tags,language,categorys,status) = if (if ((toString(i.caller) == publisher))
4343 then true
4444 else check_admins_wallets(toString(i.caller)))
4545 then {
4646 let tx_id = toBase58String(i.transactionId)
4747 let block = lastBlock
4848 let publish_time = block.timestamp
4949 [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), StringEntry((("story_" + tx_id) + "_status"), status), IntegerEntry((("story_" + tx_id) + "_publish_time"), publish_time)]
5050 }
5151 else throw("ERRROR !, add_story, MESSAGE: sorry you are not allow to invoke this funaction")
5252
5353
5454
5555 @Callable(i)
5656 func add_chapter (story_tx_id,chapter_arweave_tx_id) = {
5757 let last_chapter_id = tryGetInteger((("Story_" + story_tx_id) + "_last_chapter_id"))
5858 let tx_id = toBase58String(i.transactionId)
5959 let block = lastBlock
6060 let publish_time = block.timestamp
6161 [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)), IntegerEntry((("chapter_" + tx_id) + "_publish_time"), publish_time)]
6262 }
6363
6464
6565
6666 @Callable(i)
6767 func set_user_data (wallet,name,image_link,cover_link,bio,google_analytics,twitter,telegram,yandex_analytics,notes) = if (if ((toString(i.caller) == wallet))
6868 then true
6969 else check_admins_wallets(toString(i.caller)))
7070 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)]
7171 else throw("ERRROR !, set_user_data, MESSAGE: sorry you are not allow to invoke this funaction")
7272
7373
7474
7575 @Callable(i)
7676 func set_verified_user (wallet,name,twitter,telegram,email,notes) = if (check_admins_wallets(toString(i.caller)))
7777 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)]
7878 else throw("ERRROR !, set_verified_user, MESSAGE: sorry you are not allow to invoke this funaction")
7979
8080
8181
8282 @Callable(i)
8383 func follow_user (wallet) = {
8484 let caller = toString(i.caller)
85-[StringEntry(((("user_" + wallet) + "_followed_by_") + caller), "yes"), StringEntry(((("user_" + caller) + "_follow") + wallet), "yes")]
85+[StringEntry(((("user_" + wallet) + "_followed_by_") + caller), "yes"), StringEntry(((("user_" + caller) + "_follow_") + wallet), "yes")]
8686 }
8787
8888
8989
9090 @Callable(i)
9191 func un_follow_user (wallet) = {
9292 let caller = toString(i.caller)
93-[DeleteEntry(((("user_" + wallet) + "_followed_by_") + caller)), DeleteEntry(((("user_" + caller) + "_follow") + wallet))]
93+[DeleteEntry(((("user_" + wallet) + "_followed_by_") + caller)), DeleteEntry(((("user_" + caller) + "_follow_") + wallet))]
9494 }
9595
9696
9797
9898 @Callable(i)
9999 func add_blog_to_favorites (wallet,blog_tx_id) = if (if ((toString(i.caller) == wallet))
100100 then true
101101 else check_admins_wallets(toString(i.caller)))
102102 then {
103103 let id = tryGetInteger((("blog_" + blog_tx_id) + "_favorite_id"))
104104 let user_id = tryGetInteger((("user_" + wallet) + "_favorite_id"))
105105 [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))]
106106 }
107107 else throw("ERRROR !, add_to_favorites, MESSAGE: sorry you are not allow to invoke this funaction")
108108
109109
110110
111111 @Callable(i)
112112 func add_story_to_favorites (wallet,story_tx_id) = if (if ((toString(i.caller) == wallet))
113113 then true
114114 else check_admins_wallets(toString(i.caller)))
115115 then {
116116 let id = tryGetInteger((("story_" + story_tx_id) + "_favorite_id"))
117117 let user_id = tryGetInteger((("user_" + wallet) + "_favorite_id"))
118118 [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))]
119119 }
120120 else throw("ERRROR !, add_to_favorites, MESSAGE: sorry you are not allow to invoke this funaction")
121121
122122
123123 @Verifier(tx)
124124 func verify () = sigVerify(tx.bodyBytes, tx.proofs[0], tx.senderPublicKey)
125125

github/deemru/w8io/026f985 
34.65 ms