diff --git a/main.go b/main.go index 56bef8e..4f56d07 100644 --- a/main.go +++ b/main.go @@ -3,6 +3,7 @@ package main import ( "encoding/json" "fmt" + "git.fuyu.moe/Fuyu/flog" "git.fuyu.moe/Fuyu/router" "net/http" "strconv" @@ -36,6 +37,11 @@ type meikanListItem struct { Recommended bool `json:"recommend"` } +type meikanList struct { + User string + Anime []meikanListItem +} + type meikanAnime struct { ID int `json:"id"` Title string `json:"title"` @@ -56,9 +62,10 @@ func main() { r.Renderer = NewRenderer() r.GET(`/static/*asset`, getStatic) r.GET(`/`, home) - r.GET(`/compare/:user`, compare) + r.GET(`/compare`, compare) err := r.Start(`:8070`) check(err) + r.ErrorHandler = errorHandler } func check(e error) { @@ -72,11 +79,14 @@ func home(c *router.Context) error { } func compare(c *router.Context) error { - user := c.Param(`user`) + user := c.QueryParam(`name`) + fmt.Println(user) //https://api.jikan.moe/v3/user/nekomata1037/animelist/all //https://api.meikan.moe/v1/ids/anime jikanList := jikanAPIGetUserAnimelist(user) - var anime []meikanListItem + var list meikanList + list.User = user + anime := list.Anime fmt.Println("Getting IDs") IDs := meikanAPIGetIDs() for i := 0; i < len(jikanList.Anime); i++ { @@ -106,7 +116,7 @@ func compare(c *router.Context) error { anime = append(anime, temp) } - return c.JSON(200, anime) + return c.Render(200, `list`, list) } func jikanAPIGetUserAnimelist(user string) jikanAPIUserList { @@ -135,3 +145,9 @@ func meikanAPIGetIDs() map[int]int { } return IDsMap } + +func errorHandler(c *router.Context, v interface{}) { + flog.Critical(c.Request.Method, ` `, c.Request.URL.Path, `: `, v) + + _ = c.StatusText(http.StatusBadRequest) +} diff --git a/templates/pages/index.gohtml b/templates/pages/index.gohtml index 4d64d5a..75a09bd 100644 --- a/templates/pages/index.gohtml +++ b/templates/pages/index.gohtml @@ -1,3 +1,7 @@ {{ define "body" }} -

Hello, 世界!

+

Import MAL list

+
+ + +
{{ end }} \ No newline at end of file diff --git a/templates/pages/list.gohtml b/templates/pages/list.gohtml new file mode 100644 index 0000000..7fd5d34 --- /dev/null +++ b/templates/pages/list.gohtml @@ -0,0 +1,3 @@ +{{ define "body" }} +

List for {{.List.User}}

+{{ end }} \ No newline at end of file