parent
24d5450546
commit
4bd6cfc8ce
@ -0,0 +1,43 @@ |
|||||||
|
package api |
||||||
|
|
||||||
|
import ( |
||||||
|
"log" |
||||||
|
|
||||||
|
"github.com/gofiber/fiber/v2" |
||||||
|
_ "github.com/mattn/go-sqlite3" |
||||||
|
sq "github.com/Masterminds/squirrel" |
||||||
|
|
||||||
|
"MY/webapp/data" |
||||||
|
. "MY/webapp/common" |
||||||
|
) |
||||||
|
|
||||||
|
func GetApiFeed(c *fiber.Ctx) error { |
||||||
|
page := c.QueryInt("page", 0) |
||||||
|
if page < 0 { page = 0 } |
||||||
|
|
||||||
|
sql, args, err := sq.Select("*"). |
||||||
|
Limit(2). |
||||||
|
Offset(uint64(2 * page)). |
||||||
|
From("message"). |
||||||
|
Where(sq.Eq{"user_id": c.Params("user_id")}).ToSql() |
||||||
|
|
||||||
|
if err != nil { return IfErrNil(err, c) } |
||||||
|
|
||||||
|
err = data.SelectJson[data.Message](c, err, sql, args...) |
||||||
|
|
||||||
|
return IfErrNil(err, c) |
||||||
|
} |
||||||
|
|
||||||
|
|
||||||
|
func GetApiReplies(c *fiber.Ctx) error { |
||||||
|
message_id := c.Params("message_id") |
||||||
|
|
||||||
|
sql, args, err := sq.Select("*").From("message"). |
||||||
|
Where(sq.Eq{"replying_to": message_id}).ToSql() |
||||||
|
|
||||||
|
log.Println("SQL", sql, args); |
||||||
|
if err != nil { return IfErrNil(err, c) } |
||||||
|
|
||||||
|
err = data.SelectJson[data.Message](c, err, sql, args...) |
||||||
|
return IfErrNil(err, c) |
||||||
|
} |
@ -0,0 +1,35 @@ |
|||||||
|
package api |
||||||
|
|
||||||
|
import ( |
||||||
|
"github.com/gofiber/fiber/v2" |
||||||
|
_ "github.com/mattn/go-sqlite3" |
||||||
|
sq "github.com/Masterminds/squirrel" |
||||||
|
|
||||||
|
"MY/webapp/data" |
||||||
|
. "MY/webapp/common" |
||||||
|
) |
||||||
|
|
||||||
|
func GetApiMessage(c *fiber.Ctx) error { |
||||||
|
sql, args, err := sq.Select("*").From("message"). |
||||||
|
Where(sq.Eq{"id": c.Params("id")}).ToSql() |
||||||
|
|
||||||
|
if err != nil { return IfErrNil(err, c) } |
||||||
|
|
||||||
|
err = data.GetJson[data.Message](c, err, sql, args...) |
||||||
|
|
||||||
|
return IfErrNil(err, c) |
||||||
|
} |
||||||
|
|
||||||
|
func PostApiMessage(c *fiber.Ctx) error { |
||||||
|
message, err := ReceivePost[data.Message](c) |
||||||
|
if err != nil { return IfErrNil(err, c) } |
||||||
|
|
||||||
|
sql, args, err := sq.Insert("message"). |
||||||
|
Columns("text", "user_id"). |
||||||
|
Values(message.Text, 1).ToSql() |
||||||
|
|
||||||
|
err = data.Exec(err, sql, args...) |
||||||
|
if err != nil { return IfErrNil(err, c) } |
||||||
|
|
||||||
|
return c.Redirect("/feed/") |
||||||
|
} |
@ -0,0 +1,11 @@ |
|||||||
|
package api |
||||||
|
|
||||||
|
import ( |
||||||
|
"github.com/gofiber/fiber/v2" |
||||||
|
"os" |
||||||
|
) |
||||||
|
|
||||||
|
func GetApiRestart(c *fiber.Ctx) error { |
||||||
|
os.Exit(0) |
||||||
|
return c.Redirect("/") |
||||||
|
} |
Loading…
Reference in new issue