mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-05-04 04:20:53 +08:00
This commit is contained in:
parent
39d0a9b08f
commit
851483c5d2
@ -17,8 +17,8 @@
|
|||||||
package api
|
package api
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"encoding/hex"
|
||||||
"net/http"
|
"net/http"
|
||||||
"os"
|
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/88250/gulu"
|
"github.com/88250/gulu"
|
||||||
@ -44,21 +44,31 @@ func indexRepo(c *gin.Context) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func importRepoKey(c *gin.Context) {
|
||||||
|
ret := gulu.Ret.NewResult()
|
||||||
|
defer c.JSON(http.StatusOK, ret)
|
||||||
|
|
||||||
|
arg, ok := util.JsonArg(c, ret)
|
||||||
|
if !ok {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
util.PushMsg(model.Conf.Language(136), 1000*7)
|
||||||
|
hexKey := arg["key"].(string)
|
||||||
|
if err := model.IndexRepo(hexKey); nil != err {
|
||||||
|
ret.Code = -1
|
||||||
|
ret.Msg = model.Conf.Language(137)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
time.Sleep(1 * time.Second)
|
||||||
|
util.PushMsg(model.Conf.Language(138), 3000)
|
||||||
|
}
|
||||||
|
|
||||||
func initRepoKey(c *gin.Context) {
|
func initRepoKey(c *gin.Context) {
|
||||||
ret := gulu.Ret.NewResult()
|
ret := gulu.Ret.NewResult()
|
||||||
defer c.JSON(http.StatusOK, ret)
|
defer c.JSON(http.StatusOK, ret)
|
||||||
|
|
||||||
util.PushMsg(model.Conf.Language(136), 1000*7)
|
util.PushMsg(model.Conf.Language(136), 1000*7)
|
||||||
if err := os.RemoveAll(model.Conf.Repo.GetSaveDir()); nil != err {
|
|
||||||
ret.Code = -1
|
|
||||||
ret.Msg = err.Error()
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if err := os.MkdirAll(model.Conf.Repo.GetSaveDir(), 0755); nil != err {
|
|
||||||
ret.Code = -1
|
|
||||||
ret.Msg = err.Error()
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if err := model.InitRepoKey(); nil != err {
|
if err := model.InitRepoKey(); nil != err {
|
||||||
ret.Code = -1
|
ret.Code = -1
|
||||||
ret.Msg = model.Conf.Language(137)
|
ret.Msg = model.Conf.Language(137)
|
||||||
@ -67,4 +77,8 @@ func initRepoKey(c *gin.Context) {
|
|||||||
|
|
||||||
time.Sleep(1 * time.Second)
|
time.Sleep(1 * time.Second)
|
||||||
util.PushMsg(model.Conf.Language(138), 3000)
|
util.PushMsg(model.Conf.Language(138), 3000)
|
||||||
|
|
||||||
|
ret.Data = map[string]interface{}{
|
||||||
|
"key": hex.EncodeToString(model.Conf.Repo.Key),
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -247,6 +247,7 @@ func ServeAPI(ginServer *gin.Engine) {
|
|||||||
ginServer.Handle("POST", "/api/bazaar/getBazaarPackageREAME", model.CheckAuth, getBazaarPackageREAME)
|
ginServer.Handle("POST", "/api/bazaar/getBazaarPackageREAME", model.CheckAuth, getBazaarPackageREAME)
|
||||||
|
|
||||||
ginServer.Handle("POST", "/api/repo/initRepoKey", model.CheckAuth, initRepoKey)
|
ginServer.Handle("POST", "/api/repo/initRepoKey", model.CheckAuth, initRepoKey)
|
||||||
|
ginServer.Handle("POST", "/api/repo/importRepoKey", model.CheckAuth, importRepoKey)
|
||||||
ginServer.Handle("POST", "/api/repo/indexRepo", model.CheckAuth, indexRepo)
|
ginServer.Handle("POST", "/api/repo/indexRepo", model.CheckAuth, indexRepo)
|
||||||
|
|
||||||
ginServer.Handle("POST", "/api/notification/pushMsg", model.CheckAuth, pushMsg)
|
ginServer.Handle("POST", "/api/notification/pushMsg", model.CheckAuth, pushMsg)
|
||||||
|
@ -18,14 +18,40 @@ package model
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"crypto/rand"
|
"crypto/rand"
|
||||||
|
"encoding/hex"
|
||||||
"errors"
|
"errors"
|
||||||
|
"os"
|
||||||
|
|
||||||
"github.com/siyuan-note/dejavu"
|
"github.com/siyuan-note/dejavu"
|
||||||
"github.com/siyuan-note/encryption"
|
"github.com/siyuan-note/encryption"
|
||||||
"github.com/siyuan-note/siyuan/kernel/util"
|
"github.com/siyuan-note/siyuan/kernel/util"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
func ImportRepoKey(hexKey string) (err error) {
|
||||||
|
key, err := hex.DecodeString(hexKey)
|
||||||
|
if nil != err {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
Conf.Repo.Key = key
|
||||||
|
Conf.Save()
|
||||||
|
|
||||||
|
if err = os.RemoveAll(Conf.Repo.GetSaveDir()); nil != err {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if err = os.MkdirAll(Conf.Repo.GetSaveDir(), 0755); nil != err {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
func InitRepoKey() (err error) {
|
func InitRepoKey() (err error) {
|
||||||
|
if err = os.RemoveAll(Conf.Repo.GetSaveDir()); nil != err {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if err = os.MkdirAll(Conf.Repo.GetSaveDir(), 0755); nil != err {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
randomBytes := make([]byte, 16)
|
randomBytes := make([]byte, 16)
|
||||||
_, err = rand.Read(randomBytes)
|
_, err = rand.Read(randomBytes)
|
||||||
if nil != err {
|
if nil != err {
|
||||||
|
Loading…
Reference in New Issue
Block a user