func (this *PostRouter) EditSubmit() { this.TplName = "post/edit.html" if this.CheckActiveRedirect() { return } var postMd models.Post if this.loadPost(&postMd, &this.User) { return } form := post.PostForm{} form.SetFromPost(&postMd) post.ListCategories(&form.Categories) post.ListTopics(&form.Topics) if !this.ValidFormSets(&form) { return } if err := form.UpdatePost(&postMd, &this.User); err == nil { this.JsStorage("deleteKey", "post/edit") this.Redirect(postMd.Link(), 302) } }
func (this *PostRouter) NewSubmit() { this.TplName = "post/new.html" if this.CheckActiveRedirect() { return } form := post.PostForm{Locale: this.Locale} slug := this.GetString("topic") if len(slug) > 0 { topic := models.Topic{Slug: slug} topic.Read("Slug") form.Topic = topic.Id this.Data["Topic"] = &topic } post.ListCategories(&form.Categories) post.ListTopics(&form.Topics) if !this.ValidFormSets(&form) { return } var post models.Post if err := form.SavePost(&post, &this.User); err == nil { this.Ctx.SetCookie("post_topic", utils.ToStr(form.Topic), 1<<31-1, "/") this.Ctx.SetCookie("post_cat", utils.ToStr(form.Category), 1<<31-1, "/") this.Ctx.SetCookie("post_lang", utils.ToStr(form.Lang), 1<<31-1, "/") this.JsStorage("deleteKey", "post/new") this.Redirect(post.Link(), 302) } }
func (this *PostRouter) New() { this.TplName = "post/new.html" if this.CheckActiveRedirect() { return } form := post.PostForm{Locale: this.Locale} if v := this.Ctx.GetCookie("post_topic"); len(v) > 0 { form.Topic, _ = utils.StrTo(v).Int() } if v := this.Ctx.GetCookie("post_cat"); len(v) > 0 { form.Category, _ = utils.StrTo(v).Int() } if v := this.Ctx.GetCookie("post_lang"); len(v) > 0 { form.Lang, _ = utils.StrTo(v).Int() } else { form.Lang = this.Locale.Index() } slug := this.GetString("topic") if len(slug) > 0 { topic := models.Topic{Slug: slug} topic.Read("Slug") form.Topic = topic.Id this.Data["Topic"] = &topic } post.ListCategories(&form.Categories) post.ListTopics(&form.Topics) this.SetFormSets(&form) }
func (this *NoticeRouter) Get() { this.Data["IsNotificationPage"] = true this.TplNames = "post/notice.html" if this.CheckLoginRedirect() { return } var notifications []models.Notification qs := models.Notifications(this.User.Id) pers := 10 count, _ := models.CountObjects(qs) pager := this.SetPaginator(pers, count) qs = qs.OrderBy("-Created").Limit(pers, pager.Offset()).RelatedSel() models.ListObjects(qs, ¬ifications) this.Data["Notifications"] = notifications var cats []models.Category var topics []models.Topic post.ListCategories(&cats) this.Data["Categories"] = cats post.ListTopics(&topics) this.Data["Topics"] = topics }
func (this *PostRouter) Edit() { this.TplName = "post/edit.html" if this.CheckActiveRedirect() { return } var postMd models.Post if this.loadPost(&postMd, &this.User) { return } form := post.PostForm{} form.SetFromPost(&postMd) post.ListCategories(&form.Categories) post.ListTopics(&form.Topics) this.SetFormSets(&form) }
func (this *PostListRouter) setCategories(cats *[]models.Category) { post.ListCategories(cats) this.Data["Categories"] = *cats }
func (this *PostAdminRouter) GetForm(create bool) post.PostAdminForm { form := post.PostAdminForm{Create: create} post.ListCategories(&form.Categories) post.ListTopics(&form.Topics) return form }
//Get all the categories func (this *PostListRouter) setCategories(cats *[]models.Category) { //@see modules/post/topic_util.go post.ListCategories(cats) this.Data["Categories"] = *cats }