🎨 Physically delete a workspace on the mobile https://github.com/siyuan-note/siyuan/issues/9134

This commit is contained in:
Daniel 2023-09-08 15:36:11 +08:00
parent 147d083770
commit 5a9a4a1ece
No known key found for this signature in database
GPG key ID: 86211BA83DF03017
4 changed files with 32 additions and 6 deletions

View file

@ -51,6 +51,7 @@ func ServeAPI(ginServer *gin.Engine) {
ginServer.Handle("POST", "/api/system/checkWorkspaceDir", model.CheckAuth, model.CheckReadonly, checkWorkspaceDir)
ginServer.Handle("POST", "/api/system/createWorkspaceDir", model.CheckAuth, model.CheckReadonly, createWorkspaceDir)
ginServer.Handle("POST", "/api/system/removeWorkspaceDir", model.CheckAuth, model.CheckReadonly, removeWorkspaceDir)
ginServer.Handle("POST", "/api/system/removeWorkspaceDirPhysically", model.CheckAuth, model.CheckReadonly, removeWorkspaceDirPhysically)
ginServer.Handle("POST", "/api/system/setAppearanceMode", model.CheckAuth, setAppearanceMode)
ginServer.Handle("POST", "/api/system/getSysFonts", model.CheckAuth, getSysFonts)
ginServer.Handle("POST", "/api/system/exit", model.CheckAuth, exit)

View file

@ -163,6 +163,31 @@ func removeWorkspaceDir(c *gin.Context) {
}
}
func removeWorkspaceDirPhysically(c *gin.Context) {
ret := gulu.Ret.NewResult()
defer c.JSON(http.StatusOK, ret)
arg, ok := util.JsonArg(c, ret)
if !ok {
return
}
path := arg["path"].(string)
if gulu.File.IsDir(path) {
err := os.RemoveAll(path)
if nil != err {
ret.Code = -1
ret.Msg = err.Error()
return
}
}
if util.WorkspaceDir == path {
os.Exit(logging.ExitCodeOk)
}
}
type Workspace struct {
Path string `json:"path"`
Closed bool `json:"closed"`

View file

@ -48,11 +48,11 @@ require (
github.com/radovskyb/watcher v1.0.7
github.com/sashabaranov/go-openai v1.14.2
github.com/shirou/gopsutil/v3 v3.23.7
github.com/siyuan-note/dejavu v0.0.0-20230907034025-e0913b2dc340
github.com/siyuan-note/dejavu v0.0.0-20230908070113-b6da540c16bf
github.com/siyuan-note/encryption v0.0.0-20220713091850-5ecd92177b75
github.com/siyuan-note/eventbus v0.0.0-20230804030110-cf250f838c80
github.com/siyuan-note/filelock v0.0.0-20230615140405-d05a21d49524
github.com/siyuan-note/httpclient v0.0.0-20230907033738-6e93eb0c15a1
github.com/siyuan-note/httpclient v0.0.0-20230908014917-f63abd3164c8
github.com/siyuan-note/logging v0.0.0-20230327073243-ebe83aec1493
github.com/siyuan-note/riff v0.0.0-20230728105206-f7c344346d61
github.com/steambap/captcha v1.4.1

View file

@ -517,16 +517,16 @@ github.com/shopspring/decimal v1.3.1/go.mod h1:DKyhrW/HYNuLGql+MJL6WCR6knT2jwCFR
github.com/shurcooL/gofontwoff v0.0.0-20181114050219-180f79e6909d h1:lvCTyBbr36+tqMccdGMwuEU+hjux/zL6xSmf5S9ITaA=
github.com/shurcooL/gofontwoff v0.0.0-20181114050219-180f79e6909d/go.mod h1:05UtEgK5zq39gLST6uB0cf3NEHjETfB4Fgr3Gx5R9Vw=
github.com/simplereach/timeutils v1.2.0/go.mod h1:VVbQDfN/FHRZa1LSqcwo4kNZ62OOyqLLGQKYB3pB0Q8=
github.com/siyuan-note/dejavu v0.0.0-20230907034025-e0913b2dc340 h1:FnLS6z9eYS4d8luQBBb+fS7QsgSSenUUl0KHqyG5jxg=
github.com/siyuan-note/dejavu v0.0.0-20230907034025-e0913b2dc340/go.mod h1:Xoq/tR3bfZ8ptjXFAjQuUJmLbBSc3VUOX9SkhxrhzDw=
github.com/siyuan-note/dejavu v0.0.0-20230908070113-b6da540c16bf h1:Vm9kx7rOpq8cgksLLSLawDeoNc+BDxIGmMaEwm+iWqc=
github.com/siyuan-note/dejavu v0.0.0-20230908070113-b6da540c16bf/go.mod h1:8081f/CTXwGipQQW72rsnjSnPKVvdEqtpySe0tTlpWg=
github.com/siyuan-note/encryption v0.0.0-20220713091850-5ecd92177b75 h1:Bi7/7f29LW+Fm0cHc0J1NO1cZqyJwljSWVmfOqVZgaE=
github.com/siyuan-note/encryption v0.0.0-20220713091850-5ecd92177b75/go.mod h1:H8fyqqAbp9XreANjeSbc72zEdFfKTXYN34tc1TjZwtw=
github.com/siyuan-note/eventbus v0.0.0-20230804030110-cf250f838c80 h1:XghjHKJd+SiL0DkGYFVC+UGUDFtnR4v9gkAbPeh9Eq8=
github.com/siyuan-note/eventbus v0.0.0-20230804030110-cf250f838c80/go.mod h1:Sqo4FYX5lAXu7gWkbEdJF0e6P57tNNVV4WDKYDctokI=
github.com/siyuan-note/filelock v0.0.0-20230615140405-d05a21d49524 h1:ZuxN5gwqtUOd1NkOkNhM4OlVWfjujY98zsR+zFi4x9g=
github.com/siyuan-note/filelock v0.0.0-20230615140405-d05a21d49524/go.mod h1:jK5lCYfPbFOrW23/HMeU7kmpLdEd5GkennF+kUpy7Vs=
github.com/siyuan-note/httpclient v0.0.0-20230907033738-6e93eb0c15a1 h1:0pLW28vqtJCrdNLbsd6lzKE1ebpdsXtoNRp2g4tA87o=
github.com/siyuan-note/httpclient v0.0.0-20230907033738-6e93eb0c15a1/go.mod h1:5yGlVBDCANvsp1t7hOjgQNsa2wu3Yba82juEJC60TJQ=
github.com/siyuan-note/httpclient v0.0.0-20230908014917-f63abd3164c8 h1:AavCeAPNhLYUTDx4HsB/bvpUVdGa93tZGCXndeeUPqQ=
github.com/siyuan-note/httpclient v0.0.0-20230908014917-f63abd3164c8/go.mod h1:ario+4RMvFDgEJh73TUIxzh3zDgBWfRL0cpGmcKsoSI=
github.com/siyuan-note/logging v0.0.0-20230327073243-ebe83aec1493 h1:oaN5b0WDFkjdBgGxmmBnMrtZxaJ76LZLwhQSZnznJMI=
github.com/siyuan-note/logging v0.0.0-20230327073243-ebe83aec1493/go.mod h1:6mRFtAAvYPn3cDzqvyv+t8BVPGqpONDMMb5ywOhY1D4=
github.com/siyuan-note/riff v0.0.0-20230728105206-f7c344346d61 h1:67G1+JSlkcbRsCig83khfK7e96DxrsVnha87Tm/xgdo=