mirror of
https://github.com/siyuan-note/siyuan.git
synced 2025-12-18 15:40:12 +01:00
🎨 Sign in to use S3/WebDAV data sync https://github.com/siyuan-note/siyuan/issues/8779
This commit is contained in:
parent
11764557ac
commit
c4558c26dd
3 changed files with 45 additions and 24 deletions
|
|
@ -17,28 +17,29 @@
|
||||||
package conf
|
package conf
|
||||||
|
|
||||||
type User struct {
|
type User struct {
|
||||||
UserId string `json:"userId"`
|
UserId string `json:"userId"`
|
||||||
UserName string `json:"userName"`
|
UserName string `json:"userName"`
|
||||||
UserAvatarURL string `json:"userAvatarURL"`
|
UserAvatarURL string `json:"userAvatarURL"`
|
||||||
UserHomeBImgURL string `json:"userHomeBImgURL"`
|
UserHomeBImgURL string `json:"userHomeBImgURL"`
|
||||||
UserTitles []*UserTitle `json:"userTitles"`
|
UserTitles []*UserTitle `json:"userTitles"`
|
||||||
UserIntro string `json:"userIntro"`
|
UserIntro string `json:"userIntro"`
|
||||||
UserNickname string `json:"userNickname"`
|
UserNickname string `json:"userNickname"`
|
||||||
UserCreateTime string `json:"userCreateTime"`
|
UserCreateTime string `json:"userCreateTime"`
|
||||||
UserSiYuanProExpireTime float64 `json:"userSiYuanProExpireTime"`
|
UserSiYuanProExpireTime float64 `json:"userSiYuanProExpireTime"`
|
||||||
UserToken string `json:"userToken"`
|
UserToken string `json:"userToken"`
|
||||||
UserTokenExpireTime string `json:"userTokenExpireTime"`
|
UserTokenExpireTime string `json:"userTokenExpireTime"`
|
||||||
UserSiYuanRepoSize float64 `json:"userSiYuanRepoSize"`
|
UserSiYuanRepoSize float64 `json:"userSiYuanRepoSize"`
|
||||||
UserSiYuanPointExchangeRepoSize float64 `json:"userSiYuanPointExchangeRepoSize"`
|
UserSiYuanPointExchangeRepoSize float64 `json:"userSiYuanPointExchangeRepoSize"`
|
||||||
UserSiYuanAssetSize float64 `json:"userSiYuanAssetSize"`
|
UserSiYuanAssetSize float64 `json:"userSiYuanAssetSize"`
|
||||||
UserTrafficUpload float64 `json:"userTrafficUpload"`
|
UserTrafficUpload float64 `json:"userTrafficUpload"`
|
||||||
UserTrafficDownload float64 `json:"userTrafficDownload"`
|
UserTrafficDownload float64 `json:"userTrafficDownload"`
|
||||||
UserTrafficAPIGet float64 `json:"userTrafficAPIGet"`
|
UserTrafficAPIGet float64 `json:"userTrafficAPIGet"`
|
||||||
UserTrafficAPIPut float64 `json:"userTrafficAPIPut"`
|
UserTrafficAPIPut float64 `json:"userTrafficAPIPut"`
|
||||||
UserTrafficTime float64 `json:"userTrafficTime"`
|
UserTrafficTime float64 `json:"userTrafficTime"`
|
||||||
UserSiYuanSubscriptionPlan float64 `json:"userSiYuanSubscriptionPlan"` // -1:未订阅,0:标准订阅,1:教育订阅,2:试用
|
UserSiYuanSubscriptionPlan float64 `json:"userSiYuanSubscriptionPlan"` // -1:未订阅,0:标准订阅,1:教育订阅,2:试用
|
||||||
UserSiYuanSubscriptionStatus float64 `json:"userSiYuanSubscriptionStatus"` // -1:未订阅,0:订阅可用,1:订阅封禁,2:订阅过期
|
UserSiYuanSubscriptionStatus float64 `json:"userSiYuanSubscriptionStatus"` // -1:未订阅,0:订阅可用,1:订阅封禁,2:订阅过期
|
||||||
UserSiYuanSubscriptionType float64 `json:"userSiYuanSubscriptionType"` // 0 年付;1 终生;2 月付
|
UserSiYuanSubscriptionType float64 `json:"userSiYuanSubscriptionType"` // 0 年付;1 终生;2 月付
|
||||||
|
UserSiYuanThirdPartySyncPayStatus float64 `json:"UserSiYuanThirdPartySyncPayStatus"` // 0 未付费;1 已付费
|
||||||
}
|
}
|
||||||
|
|
||||||
type UserTitle struct {
|
type UserTitle struct {
|
||||||
|
|
|
||||||
|
|
@ -714,6 +714,15 @@ func IsSubscriber() bool {
|
||||||
return nil != Conf.User && (-1 == Conf.User.UserSiYuanProExpireTime || 0 < Conf.User.UserSiYuanProExpireTime) && 0 == Conf.User.UserSiYuanSubscriptionStatus
|
return nil != Conf.User && (-1 == Conf.User.UserSiYuanProExpireTime || 0 < Conf.User.UserSiYuanProExpireTime) && 0 == Conf.User.UserSiYuanSubscriptionStatus
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func IsThirdPartySyncPaid() bool {
|
||||||
|
if IsSubscriber() {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
return nil != Conf.User // Sign in to use S3/WebDAV data sync https://github.com/siyuan-note/siyuan/issues/8779
|
||||||
|
// TODO https://github.com/siyuan-note/siyuan/issues/8780
|
||||||
|
// return nil != Conf.User && 1 == Conf.User.UserSiYuanThirdPartySyncPayStatus
|
||||||
|
}
|
||||||
|
|
||||||
const (
|
const (
|
||||||
MaskedUserData = ""
|
MaskedUserData = ""
|
||||||
MaskedAccessAuthCode = "*******"
|
MaskedAccessAuthCode = "*******"
|
||||||
|
|
|
||||||
|
|
@ -229,8 +229,19 @@ func checkSync(boot, exit, byHand bool) bool {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
if !IsSubscriber() && conf.ProviderSiYuan == Conf.Sync.Provider {
|
switch Conf.Sync.Provider {
|
||||||
return false
|
case conf.ProviderSiYuan:
|
||||||
|
if !IsSubscriber() {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
case conf.ProviderWebDAV:
|
||||||
|
if !IsThirdPartySyncPaid() {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
case conf.ProviderS3:
|
||||||
|
if !IsThirdPartySyncPaid() {
|
||||||
|
return false
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if util.IsMutexLocked(&syncLock) {
|
if util.IsMutexLocked(&syncLock) {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue