memeland.gno

1.01 Kb ยท 51 lines
 1package memeland
 2
 3import (
 4	"std"
 5	"time"
 6
 7	"gno.land/p/demo/memeland"
 8)
 9
10var m *memeland.Memeland
11
12func init() {
13	m = memeland.NewMemeland()
14	m.TransferOwnership("g125em6arxsnj49vx35f0n0z34putv5ty3376fg5")
15}
16
17func PostMeme(data string, timestamp int64) string {
18	return m.PostMeme(data, timestamp)
19}
20
21func Upvote(id string) string {
22	return m.Upvote(id)
23}
24
25func GetPostsInRange(startTimestamp, endTimestamp int64, page, pageSize int, sortBy string) string {
26	return m.GetPostsInRange(startTimestamp, endTimestamp, page, pageSize, sortBy)
27}
28
29func RemovePost(id string) string {
30	return m.RemovePost(id)
31}
32
33func GetOwner() std.Address {
34	return m.Owner()
35}
36
37func TransferOwnership(newOwner std.Address) {
38	if err := m.TransferOwnership(newOwner); err != nil {
39		panic(err)
40	}
41}
42
43func Render(path string) string {
44	numOfMemes := int(m.MemeCounter)
45	if numOfMemes == 0 {
46		return "No memes posted yet! :/"
47	}
48
49	// Default render is get Posts since year 2000 to now
50	return m.GetPostsInRange(0, time.Now().Unix(), 1, 10, "DATE_CREATED")
51}