From 4b8e888437a9972459e73496d811ea30f105f06c Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 15 Mar 2014 05:30:59 -0400 Subject: Finish feeds --- routers/user/user.go | 47 ++++++++++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 19 deletions(-) (limited to 'routers/user/user.go') diff --git a/routers/user/user.go b/routers/user/user.go index 680055f661..513767a30b 100644 --- a/routers/user/user.go +++ b/routers/user/user.go @@ -5,6 +5,7 @@ package user import ( + "fmt" "net/http" "github.com/codegangsta/martini" @@ -26,10 +27,17 @@ func Dashboard(r render.Render, data base.TmplData, session sessions.Session) { return } data["MyRepos"] = repos + + feeds, err := models.GetFeeds(auth.SignedInId(session), 0, false) + if err != nil { + log.Handle(200, "user.Dashboard", data, r, err) + return + } + data["Feeds"] = feeds r.HTML(200, "user/dashboard", data) } -func Profile(params martini.Params, r render.Render, req *http.Request, data base.TmplData, session sessions.Session) { +func Profile(params martini.Params, req *http.Request, r render.Render, data base.TmplData, session sessions.Session) { data["Title"] = "Profile" // TODO: Need to check view self or others. @@ -40,23 +48,13 @@ func Profile(params martini.Params, r render.Render, req *http.Request, data bas } data["Owner"] = user - - req.ParseForm() - tab := req.Form.Get("tab") - data["TabName"] = tab - - switch tab { - case "activity": - feeds, err := models.GetFeeds(user.Id, 0, true) - if err != nil { - log.Handle(200, "user.Profile", data, r, err) - return - } - data["Feeds"] = feeds - default: - + data["TabName"] = req.FormValue("tab") + feeds, err := models.GetFeeds(user.Id, 0, true) + if err != nil { + log.Handle(200, "user.Profile", data, r, err) + return } - + data["Feeds"] = feeds r.HTML(200, "user/profile", data) } @@ -172,10 +170,21 @@ func Delete(data base.TmplData, req *http.Request, session sessions.Session, r r r.HTML(200, "user/delete", data) } +const ( + feedTpl = ` +
%s
%s
` +) + func Feeds(form auth.FeedsForm, r render.Render) { - actions, err := models.GetFeeds(form.UserId, form.Offset, false) + actions, err := models.GetFeeds(form.UserId, form.Page*20, false) if err != nil { r.JSON(500, err) } - r.JSON(200, actions) + + feeds := make([]string, len(actions)) + for i := range actions { + feeds[i] = fmt.Sprintf(feedTpl, base.ActionIcon(actions[i].OpType), + base.TimeSince(actions[i].Created), base.ActionDesc(actions[i])) + } + r.JSON(200, &feeds) } -- cgit v1.2.3