1、实现标签功能

2、实现删除用户,当删除一个用户时,该用户的所有信息将转义到超级管理员账户上
This commit is contained in:
Minho
2017-07-07 16:20:55 +08:00
parent c7f32d7cb5
commit 47687cc5b1
85 changed files with 13999 additions and 184 deletions

View File

@@ -137,7 +137,7 @@ func (c *BookController) SaveBook() {
comment_status = "closed"
}
if tag != ""{
tags := strings.Split(tag,";")
tags := strings.Split(tag,",")
if len(tags) > 10 {
c.JsonResult(6005,"最多允许添加10个标签")
}

View File

@@ -26,6 +26,7 @@ import (
"github.com/lifei6671/mindoc/models"
"github.com/lifei6671/mindoc/utils"
"github.com/lifei6671/mindoc/utils/wkhtmltopdf"
"github.com/russross/blackfriday"
)
//DocumentController struct.
@@ -126,7 +127,7 @@ func (c *DocumentController) Index() {
c.Data["Model"] = bookResult
c.Data["Result"] = template.HTML(tree)
c.Data["Title"] = "概要"
c.Data["Content"] = bookResult.Description
c.Data["Content"] = template.HTML( blackfriday.MarkdownBasic([]byte(bookResult.Description)))
}
//阅读文档.

View File

@@ -43,4 +43,11 @@ func (c *HomeController) Index() {
c.Data["Lists"] = books
labels ,totalCount,err := models.NewLabel().FindToPager(1,10)
if err != nil {
c.Data["Labels"] = make([]*models.Label,0)
}else{
c.Data["Labels"] = labels
}
}

60
controllers/label.go Normal file
View File

@@ -0,0 +1,60 @@
package controllers
import (
"github.com/lifei6671/mindoc/models"
"github.com/astaxie/beego/orm"
"github.com/astaxie/beego"
"github.com/lifei6671/mindoc/conf"
"github.com/lifei6671/mindoc/utils"
)
type LabelController struct {
BaseController
}
func (c *LabelController) Index() {
c.Prepare()
c.TplName = "label/index.tpl"
//如果没有开启你们访问则跳转到登录
if !c.EnableAnonymous && c.Member == nil {
c.Redirect(beego.URLFor("AccountController.Login"),302)
return
}
labelName := c.Ctx.Input.Param(":key")
pageIndex,_ := c.GetInt("page",1)
if labelName == "" {
c.Abort("404")
}
_,err := models.NewLabel().FindFirst("label_name",labelName)
if err != nil {
if err == orm.ErrNoRows {
c.Abort("404")
}else{
beego.Error(err)
c.Abort("500")
}
}
member_id := 0
if c.Member != nil {
member_id = c.Member.MemberId
}
search_result,totalCount,err := models.NewBook().FindForLabelToPager(labelName,pageIndex,conf.PageSize,member_id)
if err != nil {
beego.Error(err)
return
}
if totalCount > 0 {
html := utils.GetPagerHtml(c.Ctx.Request.RequestURI, pageIndex, conf.PageSize, totalCount)
c.Data["PageHtml"] = html
}else {
c.Data["PageHtml"] = ""
}
c.Data["Lists"] = search_result
c.Data["LabelName"] = labelName
}

View File

@@ -186,6 +186,7 @@ func (c *ManagerController) ChangeMemberRole() {
c.JsonResult(0, "ok", member)
}
//编辑用户信息.
func (c *ManagerController) EditMember() {
c.Prepare()
c.TplName = "manager/edit_users.tpl"
@@ -238,6 +239,38 @@ func (c *ManagerController) EditMember() {
c.Data["Model"] = member
}
//删除一个用户,并将该用户的所有信息转移到超级管理员上.
func (c *ManagerController) DeleteMember() {
c.Prepare()
member_id,_ := c.GetInt("id",0)
if member_id <= 0 {
c.JsonResult(404,"参数错误")
}
_ ,err := models.NewMember().Find(member_id)
if err != nil {
beego.Error(err)
c.JsonResult(500,"用户不存在")
}
superMember,err := models.NewMember().FindByFieldFirst("role",0)
if err != nil {
beego.Error(err)
c.JsonResult(5001,"未能找到超级管理员")
}
err = models.NewMember().Delete(member_id,superMember.MemberId)
if err != nil {
beego.Error(err)
c.JsonResult(5002,"删除失败")
}
c.JsonResult(0,"ok")
}
//项目列表.
func (c *ManagerController) Books() {
c.Prepare()
c.TplName = "manager/books.tpl"
@@ -261,7 +294,7 @@ func (c *ManagerController) Books() {
c.Data["Lists"] = books
}
//编辑项目
//编辑项目.
func (c *ManagerController) EditBook() {
c.Prepare()