123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- package http
- import (
- "strconv"
- "go-common/app/interface/main/favorite/conf"
- "go-common/app/interface/main/favorite/model"
- "go-common/library/ecode"
- "go-common/library/log"
- bm "go-common/library/net/http/blademaster"
- )
- func addFavTopic(c *bm.Context) {
- params := c.Request.Form
- midIfc, _ := c.Get("mid")
- tpStr := params.Get("tpid")
- tp, err := strconv.ParseInt(tpStr, 10, 64)
- if err != nil {
- log.Error("strconv.ParseInt(%s) error(%s)", tpStr)
- c.JSON(nil, ecode.RequestErr)
- return
- }
- err = favSvc.AddFavTopic(c, midIfc.(int64), tp, c.Request.Header.Get("Cookie"), params.Get("access_key"))
- c.JSON(nil, err)
- }
- func delFavTopic(c *bm.Context) {
- params := c.Request.Form
- mid, _ := c.Get("mid")
- tpStr := params.Get("tpid")
- tp, err := strconv.ParseInt(tpStr, 10, 64)
- if err != nil {
- log.Error("strconv.ParseInt(%s) error(%s)", tpStr)
- c.JSON(nil, ecode.RequestErr)
- return
- }
- err = favSvc.DelFavTopic(c, mid.(int64), tp)
- c.JSON(nil, err)
- }
- // isTopicFavouried determine topic whether or not favouried by mid
- func isTopicFavoured(c *bm.Context) {
- params := c.Request.Form
- mid, _ := c.Get("mid")
- tpStr := params.Get("tpid")
- tp, err := strconv.ParseInt(tpStr, 10, 64)
- if err != nil {
- log.Error("strconv.ParseInt(%s) error(%s)", tpStr)
- c.JSON(nil, ecode.RequestErr)
- return
- }
- faved, err := favSvc.IsTopicFavoured(c, mid.(int64), tp)
- if err != nil {
- c.JSON(nil, err)
- return
- }
- data := map[string]interface{}{"favoured": faved}
- c.JSON(data, nil)
- }
- func favTopics(c *bm.Context) {
- var appInfo *model.AppInfo
- params := c.Request.Form
- mid, _ := c.Get("mid")
- pnStr := params.Get("pn")
- psStr := params.Get("ps")
- pn, err := strconv.Atoi(pnStr)
- if err != nil || pn < 1 {
- pn = 1
- }
- ps, err := strconv.Atoi(psStr)
- if err != nil || ps >= conf.Conf.Fav.MaxPagesize || ps <= 0 {
- ps = conf.Conf.Fav.MaxPagesize
- }
- platformStr := params.Get("platform")
- buildStr := params.Get("build")
- mobiAppStr := params.Get("mobi_app")
- deviceStr := params.Get("device")
- if platformStr != "" && buildStr != "" {
- appInfo = &model.AppInfo{
- Platform: platformStr,
- Build: buildStr,
- MobiApp: mobiAppStr,
- Device: deviceStr,
- }
- }
- data, err := favSvc.FavTopics(c, mid.(int64), pn, ps, appInfo)
- if err != nil {
- c.JSON(nil, err)
- return
- }
- c.JSON(data, nil)
- }
|