mirror of
https://github.com/siyuan-note/siyuan.git
synced 2026-03-09 22:22:34 +01:00
🎨 Support LiuYun account login https://github.com/siyuan-note/siyuan/issues/8578
This commit is contained in:
parent
bebb75d389
commit
4459413493
18 changed files with 117 additions and 103 deletions
|
|
@ -367,7 +367,7 @@ func uploadAssets2Cloud(sqlAssets []*sql.Asset, bizType string) (err error) {
|
|||
SetCookies(&http.Cookie{Name: "symphony", Value: uploadToken}).
|
||||
SetHeader("meta-type", metaType).
|
||||
SetHeader("biz-type", bizType).
|
||||
Post(util.ChinaServer + "/apis/siyuan/upload?ver=" + util.Ver)
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/upload?ver=" + util.Ver)
|
||||
if nil != reqErr {
|
||||
logging.LogErrorf("upload assets failed: %s", reqErr)
|
||||
return ErrFailedToConnectCloudServer
|
||||
|
|
|
|||
|
|
@ -1,54 +0,0 @@
|
|||
// SiYuan - Build Your Eternal Digital Garden
|
||||
// Copyright (c) 2020-present, b3log.org
|
||||
//
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as published by
|
||||
// the Free Software Foundation, either version 3 of the License, or
|
||||
// (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
package model
|
||||
|
||||
import "github.com/siyuan-note/siyuan/kernel/util"
|
||||
|
||||
func getCloudServer() string {
|
||||
if 0 == Conf.CloudRegion {
|
||||
return util.ChinaServer
|
||||
}
|
||||
return util.NorthAmericaServer
|
||||
}
|
||||
|
||||
func getCloudWebSocketServer() string {
|
||||
if 0 == Conf.CloudRegion {
|
||||
return util.ChinaWebSocketServer
|
||||
}
|
||||
return util.NorthAmericaWebSocketServer
|
||||
}
|
||||
|
||||
func getCloudSyncServer() string {
|
||||
if 0 == Conf.CloudRegion {
|
||||
return util.ChinaSyncServer
|
||||
}
|
||||
return util.NorthAmericaSyncServer
|
||||
}
|
||||
|
||||
func getCloudAssetsServer() string {
|
||||
if 0 == Conf.CloudRegion {
|
||||
return util.ChinaCloudAssetsServer
|
||||
}
|
||||
return util.NorthAmericaCloudAssetsServer
|
||||
}
|
||||
|
||||
func getCloudAccountServer() string {
|
||||
if 0 == Conf.CloudRegion {
|
||||
return util.ChinaAccountServer
|
||||
}
|
||||
return util.NorthAmericaAccountServer
|
||||
}
|
||||
|
|
@ -186,6 +186,8 @@ func InitConf() {
|
|||
Conf.FileTree.DocCreateSavePath = strings.TrimSpace(Conf.FileTree.DocCreateSavePath)
|
||||
}
|
||||
|
||||
util.CurrentCloudRegion = Conf.CloudRegion
|
||||
|
||||
if nil == Conf.Tag {
|
||||
Conf.Tag = conf.NewTag()
|
||||
}
|
||||
|
|
|
|||
|
|
@ -83,7 +83,7 @@ func Export2Liandi(id string) (err error) {
|
|||
resp, getErr := request.
|
||||
SetSuccessResult(result).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Get(util.ChinaAccountServer + "/api/v2/article/update/" + articleId)
|
||||
Get(util.GetCloudAccountServer() + "/api/v2/article/update/" + articleId)
|
||||
if nil != getErr {
|
||||
logging.LogErrorf("get liandi article info failed: %s", getErr)
|
||||
return getErr
|
||||
|
|
@ -105,7 +105,7 @@ func Export2Liandi(id string) (err error) {
|
|||
}
|
||||
}
|
||||
|
||||
apiURL := util.ChinaAccountServer + "/api/v2/article"
|
||||
apiURL := util.GetCloudAccountServer() + "/api/v2/article"
|
||||
if foundArticle {
|
||||
apiURL += "/" + articleId
|
||||
}
|
||||
|
|
@ -159,7 +159,7 @@ func Export2Liandi(id string) (err error) {
|
|||
}
|
||||
}
|
||||
|
||||
msg := fmt.Sprintf(Conf.Language(181), util.ChinaAccountServer+"/article/"+articleId)
|
||||
msg := fmt.Sprintf(Conf.Language(181), util.GetCloudAccountServer()+"/article/"+articleId)
|
||||
util.PushMsg(msg, 7000)
|
||||
return
|
||||
}
|
||||
|
|
@ -992,7 +992,7 @@ func ExportStdMarkdown(id string) string {
|
|||
|
||||
cloudAssetsBase := ""
|
||||
if IsSubscriber() {
|
||||
cloudAssetsBase = util.ChinaCloudAssetsServer + Conf.User.UserId + "/"
|
||||
cloudAssetsBase = util.GetCloudAssetsServer() + Conf.User.UserId + "/"
|
||||
}
|
||||
return exportMarkdownContent0(tree, cloudAssetsBase, false,
|
||||
Conf.Export.BlockRefMode, Conf.Export.BlockEmbedMode, Conf.Export.FileAnnotationRefMode,
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ func CloudChatGPT(msg string, contextMsgs []string) (ret string, stop bool, err
|
|||
SetSuccessResult(requestResult).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
SetBody(payload).
|
||||
Post(util.ChinaServer + "/apis/siyuan/ai/chatGPT")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/ai/chatGPT")
|
||||
if nil != err {
|
||||
logging.LogErrorf("chat gpt failed: %s", err)
|
||||
err = ErrFailedToConnectCloudServer
|
||||
|
|
@ -106,7 +106,7 @@ func StartFreeTrial() (err error) {
|
|||
_, err = request.
|
||||
SetSuccessResult(requestResult).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/user/startFreeTrial")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/user/startFreeTrial")
|
||||
if nil != err {
|
||||
logging.LogErrorf("start free trial failed: %s", err)
|
||||
return ErrFailedToConnectCloudServer
|
||||
|
|
@ -123,7 +123,7 @@ func DeactivateUser() (err error) {
|
|||
resp, err := request.
|
||||
SetSuccessResult(requestResult).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/user/deactivate")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/user/deactivate")
|
||||
if nil != err {
|
||||
logging.LogErrorf("deactivate user failed: %s", err)
|
||||
return ErrFailedToConnectCloudServer
|
||||
|
|
@ -149,7 +149,7 @@ func SetCloudBlockReminder(id, data string, timed int64) (err error) {
|
|||
SetSuccessResult(requestResult).
|
||||
SetBody(payload).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/calendar/setBlockReminder")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/calendar/setBlockReminder")
|
||||
if nil != err {
|
||||
logging.LogErrorf("set block reminder failed: %s", err)
|
||||
return ErrFailedToConnectCloudServer
|
||||
|
|
@ -181,7 +181,7 @@ func LoadUploadToken() (err error) {
|
|||
resp, err := request.
|
||||
SetSuccessResult(requestResult).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/upload/token")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/upload/token")
|
||||
if nil != err {
|
||||
logging.LogErrorf("get upload token failed: %s", err)
|
||||
return ErrFailedToConnectCloudServer
|
||||
|
|
@ -401,7 +401,7 @@ func RemoveCloudShorthands(ids []string) (err error) {
|
|||
SetSuccessResult(&result).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
SetBody(body).
|
||||
Post(util.ChinaServer + "/apis/siyuan/inbox/removeCloudShorthands")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/inbox/removeCloudShorthands")
|
||||
if nil != err {
|
||||
logging.LogErrorf("remove cloud shorthands failed: %s", err)
|
||||
err = ErrFailedToConnectCloudServer
|
||||
|
|
@ -428,7 +428,7 @@ func GetCloudShorthand(id string) (ret map[string]interface{}, err error) {
|
|||
resp, err := request.
|
||||
SetSuccessResult(&result).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/inbox/getCloudShorthand?id=" + id)
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/inbox/getCloudShorthand?id=" + id)
|
||||
if nil != err {
|
||||
logging.LogErrorf("get cloud shorthand failed: %s", err)
|
||||
err = ErrFailedToConnectCloudServer
|
||||
|
|
@ -459,7 +459,7 @@ func GetCloudShorthands(page int) (result map[string]interface{}, err error) {
|
|||
resp, err := request.
|
||||
SetSuccessResult(&result).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/inbox/getCloudShorthands?p=" + strconv.Itoa(page))
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/inbox/getCloudShorthands?p=" + strconv.Itoa(page))
|
||||
if nil != err {
|
||||
logging.LogErrorf("get cloud shorthands failed: %s", err)
|
||||
err = ErrFailedToConnectCloudServer
|
||||
|
|
@ -496,7 +496,7 @@ func getUser(token string) (*conf.User, error) {
|
|||
_, err := request.
|
||||
SetSuccessResult(&result).
|
||||
SetBody(map[string]string{"token": token}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/user")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/user")
|
||||
if nil != err {
|
||||
logging.LogErrorf("get community user failed: %s", err)
|
||||
return nil, errors.New(Conf.Language(18))
|
||||
|
|
@ -530,7 +530,7 @@ func UseActivationcode(code string) (err error) {
|
|||
SetSuccessResult(requestResult).
|
||||
SetBody(map[string]string{"data": code}).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/useActivationcode")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/useActivationcode")
|
||||
if nil != err {
|
||||
logging.LogErrorf("check activation code failed: %s", err)
|
||||
return ErrFailedToConnectCloudServer
|
||||
|
|
@ -551,7 +551,7 @@ func CheckActivationcode(code string) (retCode int, msg string) {
|
|||
SetSuccessResult(requestResult).
|
||||
SetBody(map[string]string{"data": code}).
|
||||
SetCookies(&http.Cookie{Name: "symphony", Value: Conf.User.UserToken}).
|
||||
Post(util.ChinaServer + "/apis/siyuan/checkActivationcode")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/checkActivationcode")
|
||||
if nil != err {
|
||||
logging.LogErrorf("check activation code failed: %s", err)
|
||||
msg = ErrFailedToConnectCloudServer.Error()
|
||||
|
|
@ -567,13 +567,14 @@ func CheckActivationcode(code string) (retCode int, msg string) {
|
|||
func Login(userName, password, captcha string, cloudRegion int) (ret *gulu.Result, err error) {
|
||||
Conf.CloudRegion = cloudRegion
|
||||
Conf.Save()
|
||||
util.CurrentCloudRegion = cloudRegion
|
||||
|
||||
result := map[string]interface{}{}
|
||||
request := httpclient.NewCloudRequest30s()
|
||||
_, err = request.
|
||||
SetSuccessResult(&result).
|
||||
SetBody(map[string]string{"userName": userName, "userPassword": password, "captcha": captcha}).
|
||||
Post(getCloudServer() + "/apis/siyuan/login")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/login")
|
||||
if nil != err {
|
||||
logging.LogErrorf("login failed: %s", err)
|
||||
return nil, errors.New(Conf.Language(18))
|
||||
|
|
@ -600,7 +601,7 @@ func Login2fa(token, code string) (map[string]interface{}, error) {
|
|||
SetSuccessResult(&result).
|
||||
SetBody(map[string]string{"twofactorAuthCode": code}).
|
||||
SetHeader("token", token).
|
||||
Post(util.ChinaServer + "/apis/siyuan/login/2fa")
|
||||
Post(util.GetCloudServer() + "/apis/siyuan/login/2fa")
|
||||
if nil != err {
|
||||
logging.LogErrorf("login 2fa failed: %s", err)
|
||||
return nil, errors.New(Conf.Language(18))
|
||||
|
|
|
|||
|
|
@ -1668,12 +1668,12 @@ func buildCloudConf() (ret *cloud.Conf, err error) {
|
|||
UserID: userId,
|
||||
Token: token,
|
||||
AvailableSize: availableSize,
|
||||
Server: util.ChinaServer,
|
||||
Server: util.GetCloudServer(),
|
||||
}
|
||||
|
||||
switch Conf.Sync.Provider {
|
||||
case conf.ProviderSiYuan:
|
||||
ret.Endpoint = util.ChinaSyncServer
|
||||
ret.Endpoint = util.GetCloudSyncServer()
|
||||
case conf.ProviderS3:
|
||||
ret.S3 = &cloud.ConfS3{
|
||||
Endpoint: Conf.Sync.S3.Endpoint,
|
||||
|
|
|
|||
|
|
@ -573,7 +573,7 @@ func planSyncAfter(d time.Duration) {
|
|||
}
|
||||
|
||||
func isProviderOnline(byHand bool) (ret bool) {
|
||||
checkURL := util.ChinaSyncServer
|
||||
checkURL := util.GetCloudSyncServer()
|
||||
skipTlsVerify := false
|
||||
switch Conf.Sync.Provider {
|
||||
case conf.ProviderSiYuan:
|
||||
|
|
@ -744,7 +744,7 @@ var KernelID = gulu.Rand.String(7)
|
|||
|
||||
func dialSyncWebSocket() (c *websocket.Conn, err error) {
|
||||
//endpoint := "ws://127.0.0.1:64388" + "/apis/siyuan/dejavu/ws"
|
||||
endpoint := util.ChinaWebSocketServer + "/apis/siyuan/dejavu/ws"
|
||||
endpoint := util.GetCloudWebSocketServer() + "/apis/siyuan/dejavu/ws"
|
||||
header := http.Header{
|
||||
"x-siyuan-uid": []string{Conf.User.UserId},
|
||||
"x-siyuan-kernel": []string{KernelID},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue