SC Arguments: [Name:SC_ACTION Type:uint64 Value:'0' Name:SC_ID Type:hash Value:'83a534bc7bba0d4d26215aeb2fb5aec34a443c8252a165e5fc8191d8fb656183' Name:code Type:string Value:'Function InitializePrivate() Uint64
10 IF init() == 0 THEN GOTO 30
20 RETURN 1
30 STORE("var_header_name", "HelloWorld")
31 STORE("var_header_description", "")
32 STORE("var_header_icon", "")
33 STORE("dURL", "helloworld.tela")
34 STORE("mods", "vspubim")
40 STORE("DOC1", "f1305179429ea8739c916d9c39eedc291b6c2b379e47025606171216e54bb596")
1000 RETURN 0
End Function
Function init() Uint64
10 IF EXISTS("owner") == 0 THEN GOTO 30
20 RETURN 1
30 STORE("owner", address())
50 STORE("telaVersion", "1.1.0")
60 STORE("commit", 0)
70 STORE(0, HEX(TXID()))
80 STORE("hash", HEX(TXID()))
85 STORE("likes", 0)
90 STORE("dislikes", 0)
100 RETURN 0
End Function
Function address() String
10 DIM s as String
20 LET s = SIGNER()
30 IF IS_ADDRESS_VALID(s) THEN GOTO 50
40 RETURN "anon"
50 RETURN ADDRESS_STRING(s)
End Function
Function Rate(r Uint64) Uint64
10 DIM addr as String
15 LET addr = address()
16 IF r < 100 && EXISTS(addr) == 0 && addr != "anon" THEN GOTO 30
20 RETURN 1
30 STORE(addr, ""+r+"_"+BLOCK_HEIGHT())
40 IF r < 50 THEN GOTO 70
50 STORE("likes", LOAD("likes")+1)
60 RETURN 0
70 STORE("dislikes", LOAD("dislikes")+1)
100 RETURN 0
End Function
Function UpdateCode(code String, mods String) Uint64
10 IF LOAD("owner") == "anon" THEN GOTO 20
15 IF code == "" THEN GOTO 20
16 IF LOAD("owner") == address() THEN GOTO 30
20 RETURN 1
30 UPDATE_SC_CODE(code)
40 STORE("commit", LOAD("commit")+1)
50 STORE(LOAD("commit"), HEX(TXID()))
60 STORE("hash", HEX(TXID()))
70 STORE("mods", mods)
100 RETURN 0
End Function
Function SetVar(k String, v String) Uint64
10 IF LOAD("owner") == "anon" THEN GOTO 20
11 DIM addr as String
12 LET addr = address()
13 IF LOAD("owner") == addr THEN GOTO 30
14 IF addr == "anon" THEN GOTO 20
15 IF STRLEN(k) > 256 || STRLEN(v) > 256 THEN GOTO 20
16 IF EXISTS("ivar_"+addr+"_"+k) == 0 THEN GOTO 50
20 RETURN 1
30 IF EXISTS("ivar_"+k) THEN GOTO 20
31 STORE("ivar_"+k, v)
40 RETURN 0
50 STORE("ivar_"+addr+"_"+k, v)
90 RETURN 0
End Function' Name:entrypoint Type:string Value:'UpdateCode' Name:mods Type:string Value:'vspubim'] |