Browse Source

Add addRecordForFile()

HEAD
Yang Luo 3 years ago
parent
commit
a803b71d99
2 changed files with 27 additions and 5 deletions
  1. +3
    -3
      controllers/file.go
  2. +24
    -2
      controllers/util_record.go

+ 3
- 3
controllers/file.go View File

@@ -24,7 +24,7 @@ func (c *ApiController) UpdateFile() {

res := object.UpdateFile(storeId, key, &file)
if res {
addRecord(c, userName)
addRecordForFile(c, userName, "Update", storeId, key, "", true)
}

c.Data["json"] = res
@@ -55,7 +55,7 @@ func (c *ApiController) AddFile() {

res := object.AddFile(storeId, key, isLeaf, filename, file)
if res {
addRecord(c, userName)
addRecordForFile(c, userName, "Add", storeId, key, filename, isLeaf)
}

c.Data["json"] = res
@@ -74,7 +74,7 @@ func (c *ApiController) DeleteFile() {

res := object.DeleteFile(storeId, key, isLeaf)
if res {
addRecord(c, userName)
addRecordForFile(c, userName, "Delete", storeId, key, "", isLeaf)
}

c.Data["json"] = res


+ 24
- 2
controllers/util_record.go View File

@@ -1,11 +1,12 @@
package controllers

import (
"fmt"
"strings"

"github.com/astaxie/beego/context"
"github.com/casbin/casbase/util"
"github.com/casdoor/casdoor-go-sdk/casdoorsdk"
"github.com/openbrainorg/openbrain/util"
)

func NewRecord(ctx *context.Context) *casdoorsdk.Record {
@@ -29,8 +30,29 @@ func NewRecord(ctx *context.Context) *casdoorsdk.Record {
return &record
}

func addRecord(c *ApiController, userName string) {
func addRecord(c *ApiController, userName string, requestUri string) {
record := NewRecord(c.Ctx)
record.User = userName
if requestUri != "" {
record.RequestUri = requestUri
}

util.SafeGoroutine(func() { casdoorsdk.AddRecord(record) })
}

func addRecordForFile(c *ApiController, userName string, action string, storeId string, key string, filename string, isLeaf bool) {
typ := "Folder"
if isLeaf {
typ = "File"
}

_, storeName := util.GetOwnerAndNameFromId(storeId)

path := fmt.Sprintf("/%s/%s", key, filename)
if filename == "" {
path = key
}

text := fmt.Sprintf("%s%s, Store: %s, Path: %s", action, typ, storeName, path)
addRecord(c, userName, text)
}

Loading…
Cancel
Save