github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/routers/root/RUpdatePage.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 GetRUpdatePageHandler(self *makross.Context) error {
    13  
    14  	self.Set("catpage", "RUpdatePageHandler")
    15  	TplNames := "root/update_page"
    16  
    17  	pageid := self.Param("pageid").MustInt64()
    18  
    19  	page, _ := models.GetPage(pageid)
    20  
    21  	self.Set("page", page)
    22  	if nds, err := models.GetNodes(0, 0, "id"); nds != nil && err == nil {
    23  		self.Set("nodes", nds)
    24  
    25  	}
    26  
    27  	return self.Render(TplNames)
    28  
    29  }
    30  
    31  func PostRUpdatePageHandler(self *makross.Context) error {
    32  	
    33  
    34  	self.Set("catpage", "RUpdatePageHandler")
    35  	//TplNames := "root/update_page"
    36  
    37  	pageid := self.Param("pageid").MustInt64()
    38  	nid := self.Args("nodeid").MustInt64()
    39  
    40  	images := self.FormValue("images")
    41  	title := self.FormValue("title")
    42  
    43  	policy := helper.ObjPolicy()
    44  	content := policy.Sanitize(self.FormValue("content"))
    45  
    46  	if nds, err := models.GetNodes(0, 0, "id"); nds != nil && err == nil {
    47  		self.Set("nodes", nds)
    48  	}
    49  
    50  	if len(title) > 0 && len(content) > 0 && pageid > 0 {
    51  		pagez, _ := models.GetPage(pageid)
    52  
    53  		pagez.Title = title
    54  		pagez.Content = content
    55  		pagez.Attachment = images
    56  		//nd, _ := models.GetNode(nid)
    57  		pagez.Pid = nid
    58  		models.PutPage(pageid, pagez)
    59  		self.Set("pagez", pagez)
    60  		self.Flash.Success(fmt.Sprint("更新 页面ID[", pageid, "] 成功!"))
    61  		return self.Redirect("/root/update/page/" + strconv.FormatInt(pageid, 10) + "/")
    62  	} else {
    63  		self.Flash.Error(fmt.Sprint("更新 页面ID[", pageid, "] 失败!"))
    64  		return self.Redirect("/root/read/page/")
    65  
    66  	}
    67  
    68  }