diff --git a/app/appearance/langs/en_US.json b/app/appearance/langs/en_US.json
index e08614da3..df212ea51 100644
--- a/app/appearance/langs/en_US.json
+++ b/app/appearance/langs/en_US.json
@@ -1,4 +1,5 @@
{
+ "dataRepo": "Data repo",
"newSubDoc": "Create sub doc",
"newDocBelow": "Create doc below",
"newDocAbove": "Create doc above",
diff --git a/app/appearance/langs/es_ES.json b/app/appearance/langs/es_ES.json
index 4ffa138a6..2ff6a6bb8 100644
--- a/app/appearance/langs/es_ES.json
+++ b/app/appearance/langs/es_ES.json
@@ -1,4 +1,5 @@
{
+ "dataRepo": "Repositorio de datos",
"newSubDoc": "Crear subdocumento",
"newDocBelow": "Crear documento a continuación",
"newDocAbove": "Crear documento arriba",
diff --git a/app/appearance/langs/fr_FR.json b/app/appearance/langs/fr_FR.json
index d64178aca..d71d5fc7a 100644
--- a/app/appearance/langs/fr_FR.json
+++ b/app/appearance/langs/fr_FR.json
@@ -1,4 +1,5 @@
{
+ "dataRepo": "Dépôt de données",
"newSubDoc": "Créer un sous-doc",
"newDocBelow": "Créer un document ci-dessous",
"newDocAbove": "Créer un document ci-dessus",
diff --git a/app/appearance/langs/zh_CHT.json b/app/appearance/langs/zh_CHT.json
index 343e1ab37..1f370d1fa 100644
--- a/app/appearance/langs/zh_CHT.json
+++ b/app/appearance/langs/zh_CHT.json
@@ -1,4 +1,5 @@
{
+ "dataRepo": "數據倉庫",
"newSubDoc": "新建子文檔",
"newDocBelow": "在下方新建文檔",
"newDocAbove": "在上方新建文檔",
diff --git a/app/appearance/langs/zh_CN.json b/app/appearance/langs/zh_CN.json
index 24ba77f23..fa408885d 100644
--- a/app/appearance/langs/zh_CN.json
+++ b/app/appearance/langs/zh_CN.json
@@ -1,4 +1,5 @@
{
+ "dataRepo": "数据仓库",
"newSubDoc": "新建子文档",
"newDocBelow": "在下方新建文档",
"newDocAbove": "在上方新建文档",
diff --git a/app/src/config/repos.ts b/app/src/config/repos.ts
index b90b56ef8..0e9b4f837 100644
--- a/app/src/config/repos.ts
+++ b/app/src/config/repos.ts
@@ -56,6 +56,7 @@ const renderCloudBackup = () => {
- ${window.siyuan.languages.sync}${response.data.sync ? response.data.sync.hSize : "0B"}
- ${window.siyuan.languages.backup}${response.data.backup ? response.data.backup.hSize : "0B"}
+ - ${window.siyuan.languages.dataRepo}${response.data.hRepoSize}
- ${window.siyuan.languages.cdn}${response.data.hAssetSize}
- ${window.siyuan.languages.total}${response.data.hSize}
- ${window.siyuan.languages.sizeLimit}${response.data.hTotalSize}
diff --git a/kernel/api/backup.go b/kernel/api/backup.go
index 0ea8dc613..9fbc7b2c8 100644
--- a/kernel/api/backup.go
+++ b/kernel/api/backup.go
@@ -106,7 +106,7 @@ func getCloudSpace(c *gin.Context) {
ret := gulu.Ret.NewResult()
defer c.JSON(http.StatusOK, ret)
- sync, backup, size, assetSize, totalSize, err := model.GetCloudSpace()
+ sync, backup, size, assetSize, repoSize, totalSize, err := model.GetCloudSpace()
if nil != err {
ret.Code = 1
ret.Msg = err.Error()
@@ -121,6 +121,7 @@ func getCloudSpace(c *gin.Context) {
"sync": sync,
"backup": backup,
"hAssetSize": assetSize,
+ "hRepoSize": repoSize,
"hSize": size,
"hTotalSize": totalSize,
"hTrafficUploadSize": hTrafficUploadSize,
diff --git a/kernel/model/backup.go b/kernel/model/backup.go
index 22705cbed..635ab4d34 100644
--- a/kernel/model/backup.go
+++ b/kernel/model/backup.go
@@ -59,9 +59,7 @@ func RemoveCloudBackup() (err error) {
}
func getCloudAvailableBackupSize() (size int64, err error) {
- var sync map[string]interface{}
- var assetSize int64
- sync, _, assetSize, err = getCloudSpaceOSS()
+ sync, _, assetSize, repoSize, err := getCloudSpaceOSS()
if nil != err {
return
}
@@ -70,16 +68,15 @@ func getCloudAvailableBackupSize() (size int64, err error) {
if nil != sync {
syncSize = int64(sync["size"].(float64))
}
- size = int64(Conf.User.UserSiYuanRepoSize) - syncSize - assetSize
+ size = int64(Conf.User.UserSiYuanRepoSize) - syncSize - assetSize - repoSize
return
}
-func GetCloudSpace() (s *Sync, b *Backup, hSize, hAssetSize, hTotalSize string, err error) {
- var sync, backup map[string]interface{}
- var assetSize int64
- sync, backup, assetSize, err = getCloudSpaceOSS()
+func GetCloudSpace() (s *Sync, b *Backup, hSize, hAssetSize, hRepoSize, hTotalSize string, err error) {
+ sync, backup, assetSize, repoSize, err := getCloudSpaceOSS()
if nil != err {
- return nil, nil, "", "", "", errors.New(Conf.Language(30) + " " + err.Error())
+ err = errors.New(Conf.Language(30) + " " + err.Error())
+ return
}
var totalSize, syncSize, backupSize int64
@@ -103,8 +100,9 @@ func GetCloudSpace() (s *Sync, b *Backup, hSize, hAssetSize, hTotalSize string,
HSize: humanize.Bytes(uint64(backupSize)),
Updated: backupUpdated,
}
- totalSize = syncSize + backupSize + assetSize
+ totalSize = syncSize + backupSize + assetSize + repoSize
hAssetSize = humanize.Bytes(uint64(assetSize))
+ hRepoSize = humanize.Bytes(uint64(repoSize))
hSize = humanize.Bytes(uint64(totalSize))
hTotalSize = byteCountSI(int64(Conf.User.UserSiYuanRepoSize))
return
diff --git a/kernel/model/osssync.go b/kernel/model/osssync.go
index f6f293e21..27b36d140 100644
--- a/kernel/model/osssync.go
+++ b/kernel/model/osssync.go
@@ -38,7 +38,7 @@ import (
"github.com/siyuan-note/siyuan/kernel/util"
)
-func getCloudSpaceOSS() (sync, backup map[string]interface{}, assetSize int64, err error) {
+func getCloudSpaceOSS() (sync, backup map[string]interface{}, assetSize, repoSize int64, err error) {
result := map[string]interface{}{}
request := httpclient.NewCloudRequest(Conf.System.NetworkProxy.String())
resp, err := request.
@@ -47,7 +47,8 @@ func getCloudSpaceOSS() (sync, backup map[string]interface{}, assetSize int64, e
Post(util.AliyunServer + "/apis/siyuan/data/getSiYuanWorkspace?uid=" + Conf.User.UserId)
if nil != err {
util.LogErrorf("get cloud space failed: %s", err)
- return nil, nil, 0, ErrFailedToConnectCloudServer
+ err = ErrFailedToConnectCloudServer
+ return
}
if 401 == resp.StatusCode {
@@ -58,13 +59,15 @@ func getCloudSpaceOSS() (sync, backup map[string]interface{}, assetSize int64, e
code := result["code"].(float64)
if 0 != code {
util.LogErrorf("get cloud space failed: %s", result["msg"])
- return nil, nil, 0, errors.New(result["msg"].(string))
+ err = errors.New(result["msg"].(string))
+ return
}
data := result["data"].(map[string]interface{})
sync = data["sync"].(map[string]interface{})
backup = data["backup"].(map[string]interface{})
assetSize = int64(data["assetSize"].(float64))
+ repoSize = int64(data["repoSize"].(float64))
return
}