示例#1
0
文件: comment.go 项目: hxdyxd/pugo
func (cc *CommentController) Get() {
	cc.Title("COMMENT - " + strings.ToUpper(core.PUGO_NAME))
	var (
		opt = service.CommentListOption{
			Page:    cc.FormInt("page", 1),
			Size:    cc.FormInt("size", 10),
			IsCount: true,
		}
		comments = make([]*model.Comment, 0)
		pager    = new(utils.Pager)
	)

	// load comment
	switch cc.Form("status") {
	case "all":
		opt.Status = 0
	case "approved":
		opt.Status = model.COMMENT_STATUS_APPROVED
	case "wait":
		opt.Status = model.COMMENT_STATUS_WAIT
	case "spam":
		opt.Status = model.COMMENT_STATUS_SPAM
	default:
		opt.Status = 0
	}
	if err := service.Call(service.Comment.List, opt, &comments, pager); err != nil {
		cc.RenderError(500, err)
		return
	}

	// build pager url
	query := cc.Req().URL.Query()
	query.Del("page")
	queryStr := query.Encode()
	if len(queryStr) == 0 {
		queryStr = "/admin/manage/comment?page=%d"
	} else {
		queryStr = "/admin/manage/comment?" + queryStr + "&page=%d"
	}

	cc.Assign("PageUrl", queryStr)
	cc.Assign("Comments", comments)
	cc.Assign("Pager", pager)
	cc.Render("manage_comment.tmpl")
}