github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/routers/root/RUpdateLink.go (about) 1 package root 2 3 import ( 4 "fmt" 5 "github.com/insionng/makross" 6 7 "strconv" 8 "github.com/insionng/yougam/helper" 9 "github.com/insionng/yougam/models" 10 ) 11 12 func GetRUpdateLinkHandler(self *makross.Context) error { 13 self.Set("catpage", "RUpdateLinkHandler") 14 TplNames := "root/update_link" 15 16 linkid := self.Param("linkid").MustInt64() 17 18 link, _ := models.GetLink(linkid) 19 20 self.Set("link", link) 21 if nds, err := models.GetNodes(0, 0, "id"); nds != nil && err == nil { 22 self.Set("nodes", nds) 23 24 } 25 26 return self.Render(TplNames) 27 28 } 29 30 func PostRUpdateLinkHandler(self *makross.Context) error { 31 32 self.Set("catpage", "RUpdateLinkHandler") 33 //TplNames := "root/update_link" 34 35 linkid := self.Param("linkid").MustInt64() 36 nid := self.Args("nodeid").MustInt64() 37 38 images := self.FormValue("images") 39 title := self.FormValue("title") 40 41 policy := helper.ObjPolicy() 42 content := policy.Sanitize(self.FormValue("content")) 43 44 if nds, err := models.GetNodes(0, 0, "id"); nds != nil && err == nil { 45 self.Set("nodes", nds) 46 } 47 48 if len(title) > 0 && len(content) > 0 && linkid > 0 { 49 linkz, _ := models.GetLink(linkid) 50 51 linkz.Title = title 52 linkz.Content = content 53 linkz.Attachment = images 54 nd, _ := models.GetNode(nid) 55 if nd != nil { 56 linkz.Parent = nd.Title 57 } 58 linkz.Pid = nid 59 models.PutLink(linkid, linkz) 60 self.Set("linkz", linkz) 61 self.Flash.Success(fmt.Sprint("更新 友链ID[", linkid, "] 成功!")) 62 return self.Redirect("/root/update/link/" + strconv.FormatInt(linkid, 10) + "/") 63 } else { 64 self.Flash.Error(fmt.Sprint("更新 友链ID[", linkid, "] 失败!")) 65 return self.Redirect("/root/read/link/") 66 67 } 68 69 }