// 查看关注的人 func user_Follows(ctx *goku.HttpContext) goku.ActionResulter { userId, _ := strconv.ParseInt(ctx.RouteData.Params["id"], 10, 64) var user *models.User if userId > 0 { user = models.User_GetById(userId) } else { if u, ok := ctx.Data["user"]; ok { user = u.(*models.User) ctx.ViewData["UserMenu"] = "um-follows" } } if user == nil { ctx.ViewData["errorMsg"] = "用户不存在" return ctx.Render("error", nil) } page, pagesize := utils.PagerParams(ctx.Request) friends, _ := models.UserFollow_Friends(user.Id, page, pagesize) ctx.ViewData["Friends"] = models.User_ToVUsers(friends, ctx) ctx.ViewData["HasMoreFriends"] = len(friends) >= pagesize return ctx.View(models.User_ToVUser(user, ctx)) }
// 查看粉丝 func user_Fans(ctx *goku.HttpContext) goku.ActionResulter { var isSelf bool userId, _ := strconv.ParseInt(ctx.RouteData.Params["id"], 10, 64) var user *models.User if userId > 0 { user = models.User_GetById(userId) } else { if u, ok := ctx.Data["user"]; ok { user = u.(*models.User) ctx.ViewData["UserMenu"] = "um-fans" isSelf = true } } if user == nil { ctx.ViewData["errorMsg"] = "用户不存在" return ctx.Render("error", nil) } page, pagesize := utils.PagerParams(ctx.Request) followers, _ := models.UserFollow_Followers(user.Id, page, pagesize) ctx.ViewData["Followers"] = models.User_ToVUsers(followers, ctx) ctx.ViewData["HasMoreFollowers"] = len(followers) >= pagesize if isSelf { models.Remind_Reset(user.Id, models.REMIND_FANS) } return ctx.View(models.User_ToVUser(user, ctx)) }
form := form.NewForm(oldPwd, newPwd, newPwd2) return form } /** * Controller: user */ var _ = goku.Controller("user"). /** * 查看用户设置页 */ Get("setting", func(ctx *goku.HttpContext) goku.ActionResulter { user := ctx.Data["user"].(*models.User) return ctx.View(models.User_ToVUser(user, ctx)) }).Filters(filters.NewRequireLoginFilter()). /** * 更新用户基本信息 */ Post("update-base", func(ctx *goku.HttpContext) goku.ActionResulter { user := ctx.Data["user"].(*models.User) f := createBaseInfoForm() f.FillByRequest(ctx.Request) errorMsgs := make([]string, 0) if f.Valid() { m := f.CleanValues()
if user == nil { ctx.ViewData["errorMsg"] = "用户不存在" return ctx.Render("error", nil) } links := models.Link_ByUser(user.Id, 1, golink.PAGE_SIZE) friends, _ := models.UserFollow_Friends(user.Id, 1, 24) followers, _ := models.UserFollow_Followers(user.Id, 1, 24) followTopics, _ := models.User_GetFollowTopics(user.Id, 1, 24, "") ctx.ViewData["Links"] = models.Link_ToVLink(links, ctx) ctx.ViewData["Friends"] = friends ctx.ViewData["Followers"] = followers ctx.ViewData["FollowTopics"] = followTopics ctx.ViewData["HasMoreLink"] = len(links) >= golink.PAGE_SIZE return ctx.View(models.User_ToVUser(user, ctx)) }).Filters(filters.NewRequireLoginFilter()). /** * 获取用户信息 * 用于浮动层 */ Get("pbox-info", func(ctx *goku.HttpContext) goku.ActionResulter { userId, _ := strconv.ParseInt(ctx.RouteData.Params["id"], 10, 64) user := models.User_GetById(userId) if user != nil { return ctx.RenderPartial("pop-info", models.User_ToVUser(user, ctx)) }