예제 #1
0
파일: article.go 프로젝트: insionng/purine
func (w *Write) postPage() {
	form := new(mapi.PageForm)
	if err := w.Bind(form); err != nil {
		w.ServeJson(mapi.Fail(err))
		return
	}
	form.AuthorId = w.AuthUser.Id
	res := mapi.Call(mapi.Page.Write, form)
	w.ServeJson(res)
}
예제 #2
0
파일: article.go 프로젝트: insionng/purine
// ajax callback
func (w *Write) Post() {
	if w.Form("type") == "page" {
		w.postPage()
		return
	}
	form := new(mapi.ArticleForm)
	if err := w.Bind(form); err != nil {
		w.ServeJson(mapi.Fail(err))
		return
	}
	form.AuthorId = w.AuthUser.Id

	res := mapi.Call(mapi.Article.Write, form)
	w.ServeJson(res)
}
예제 #3
0
파일: comment.go 프로젝트: insionng/purine
func (c *Comment) Post() {
	// only support ajax
	if strings.ToLower(c.Req().Header.Get("X-Requested-With")) != "xmlhttprequest" {
		c.WriteHeader(400)
		return
	}
	form := new(mapi.CommentForm)
	if err := c.Bind(form); err != nil {
		c.ServeJson(mapi.Fail(err))
		return
	}
	form.For = c.Param("from")
	form.ForId = c.ParamInt64("id")
	// filter comment data
	if res := mapi.Call(mapi.Comment.Filter, form); !res.Status {
		c.ServeJson(res)
		return
	}
	// save comment
	res := mapi.Call(mapi.Comment.Save, form)
	c.ServeJson(res)
}