Vanessa 2023-06-21 11:47:26 +08:00
parent d6e1db6d62
commit c5f9612df2
12 changed files with 73 additions and 60 deletions

View file

@ -676,7 +676,7 @@
"account10": "Annual subscription", "account10": "Annual subscription",
"account11": "Until the end of the early bird discount", "account11": "Until the end of the early bird discount",
"account12": "Life companion", "account12": "Life companion",
"clickMeToRenew": "<a href=\"https://ld246.com/subscribe/siyuan\" target=\"_blank\">Go to Renew</a>", "clickMeToRenew": "Go to Renew",
"dataHistory": "Data History", "dataHistory": "Data History",
"quitApp": "Quit?", "quitApp": "Quit?",
"reset": "Reset", "reset": "Reset",

View file

@ -676,7 +676,7 @@
"account10": "Suscripción anual", "account10": "Suscripción anual",
"account11": "Hasta que finalice el descuento por pronto pago", "account11": "Hasta que finalice el descuento por pronto pago",
"account12": "Compañero de vida", "account12": "Compañero de vida",
"clickMeToRenew": "<a href=\"https://ld246.com/subscribe/siyuan\" target=\"_blank\">Ir a la renovación</a>", "clickMeToRenew": "Ir a la renovación",
"dataHistory": "Historial de datos", "dataHistory": "Historial de datos",
"quitApp": "¿Cerrar?", "quitApp": "¿Cerrar?",
"reset": "Reiniciar", "reset": "Reiniciar",

View file

@ -676,7 +676,7 @@
"account10": "Abonnement annuel", "account10": "Abonnement annuel",
"account11": "Jusqu'à la fin de la réduction pour les early bird", "account11": "Jusqu'à la fin de la réduction pour les early bird",
"account12": "Compagnon de vie", "account12": "Compagnon de vie",
"clickMeToRenew": "<a href=\"https://ld246.com/subscribe/siyuan\" target=\"_blank\">Aller à renouveler</a>", "clickMeToRenew": "Aller à renouveler",
"dataHistory": "Historique des données", "dataHistory": "Historique des données",
"quitApp": "Quitter?", "quitApp": "Quitter?",
"reset": "Réinitialiser", "reset": "Réinitialiser",

View file

@ -676,7 +676,7 @@
"account10": "年付訂閱", "account10": "年付訂閱",
"account11": "早鳥優惠活動結束還剩", "account11": "早鳥優惠活動結束還剩",
"account12": "相伴一生", "account12": "相伴一生",
"clickMeToRenew": "<a href=\"https://ld246.com/subscribe/siyuan\" target=\"_blank\">前往續訂</a>", "clickMeToRenew": "前往續訂",
"dataHistory": "數據歷史", "dataHistory": "數據歷史",
"quitApp": "是否退出?", "quitApp": "是否退出?",
"reset": "重置", "reset": "重置",

View file

@ -676,7 +676,7 @@
"account10": "年付订阅", "account10": "年付订阅",
"account11": "早鸟优惠活动结束还剩", "account11": "早鸟优惠活动结束还剩",
"account12": "相伴一生", "account12": "相伴一生",
"clickMeToRenew": "<a href=\"https://ld246.com/subscribe/siyuan\" target=\"_blank\">前往续订</a>", "clickMeToRenew": "前往续订",
"dataHistory": "数据历史", "dataHistory": "数据历史",
"quitApp": "是否退出?", "quitApp": "是否退出?",
"reset": "重置", "reset": "重置",

View file

@ -23,7 +23,7 @@ import {showMessage} from "../dialog/message";
import {replaceLocalPath} from "../editor/rename"; import {replaceLocalPath} from "../editor/rename";
import {setTabPosition} from "../window/setHeader"; import {setTabPosition} from "../window/setHeader";
import {initBar} from "../layout/topBar"; import {initBar} from "../layout/topBar";
import {setProxy} from "../config/util/setProxy"; import {setProxy} from "../config/util/about";
import {openChangelog} from "./openChangelog"; import {openChangelog} from "./openChangelog";
import {getIdFromSYProtocol, isSYProtocol} from "../util/pathName"; import {getIdFromSYProtocol, isSYProtocol} from "../util/pathName";
import {App} from "../index"; import {App} from "../index";

View file

@ -4,14 +4,13 @@ import {ipcRenderer, shell} from "electron";
/// #endif /// #endif
import {isBrowser} from "../util/functions"; import {isBrowser} from "../util/functions";
import {fetchPost} from "../util/fetch"; import {fetchPost} from "../util/fetch";
import {setAccessAuthCode} from "./util/setAccessAuthCode"; import {setAccessAuthCode, setProxy} from "./util/about";
import {exportLayout} from "../layout/util"; import {exportLayout} from "../layout/util";
import {exitSiYuan, processSync} from "../dialog/processSystem"; import {exitSiYuan, processSync} from "../dialog/processSystem";
import {openByMobile, writeText} from "../protyle/util/compatibility"; import {openByMobile, writeText} from "../protyle/util/compatibility";
import {showMessage} from "../dialog/message"; import {showMessage} from "../dialog/message";
import {Dialog} from "../dialog"; import {Dialog} from "../dialog";
import {confirmDialog} from "../dialog/confirmDialog"; import {confirmDialog} from "../dialog/confirmDialog";
import {setProxy} from "./util/setProxy";
import {setKey} from "../sync/syncGuide"; import {setKey} from "../sync/syncGuide";
export const about = { export const about = {

View file

@ -10,6 +10,7 @@ import {processSync} from "../dialog/processSystem";
import {needSubscribe} from "../util/needSubscribe"; import {needSubscribe} from "../util/needSubscribe";
import {syncGuide} from "../sync/syncGuide"; import {syncGuide} from "../sync/syncGuide";
import {hideElements} from "../protyle/ui/hideElements"; import {hideElements} from "../protyle/ui/hideElements";
import {getCloudURL} from "./util/about";
export const account = { export const account = {
element: undefined as Element, element: undefined as Element,
@ -60,18 +61,22 @@ ${window.siyuan.languages.account2}
activeSubscriptionHTML = ""; activeSubscriptionHTML = "";
subscriptionHTML = `<div class="b3-chip b3-chip--secondary">${Constants.SIYUAN_IMAGE_VIP}${window.siyuan.languages.account12}</div>`; subscriptionHTML = `<div class="b3-chip b3-chip--secondary">${Constants.SIYUAN_IMAGE_VIP}${window.siyuan.languages.account12}</div>`;
} else if (window.siyuan.user.userSiYuanProExpireTime > 0) { } else if (window.siyuan.user.userSiYuanProExpireTime > 0) {
const renewHTML = `<div class="fn__hr--b"></div>
<div class="ft__on-surface ft__smaller">
${window.siyuan.languages.account6}
${Math.max(0, Math.floor((window.siyuan.user.userSiYuanProExpireTime - new Date().getTime()) / 1000 / 60 / 60 / 24))}
${window.siyuan.languages.day}
<a href="${getCloudURL("subscribe/siyuan")}" target="_blank">${window.siyuan.languages.clickMeToRenew}</a>
</div>`
if (window.siyuan.user.userSiYuanSubscriptionPlan === 2) { if (window.siyuan.user.userSiYuanSubscriptionPlan === 2) {
subscriptionHTML = `<div class="b3-chip b3-chip--primary"><svg><use xlink:href="#iconVIP"></use></svg>${window.siyuan.languages.account3}</div> subscriptionHTML = `<div class="b3-chip b3-chip--primary"><svg><use xlink:href="#iconVIP"></use></svg>${window.siyuan.languages.account3}</div>
<div class="fn__hr--b"></div> ${renewHTML}
<div class="ft__on-surface ft__smaller">${window.siyuan.languages.account6} ${Math.max(0, Math.floor((window.siyuan.user.userSiYuanProExpireTime - new Date().getTime()) / 1000 / 60 / 60 / 24))} ${window.siyuan.languages.day} ${window.siyuan.languages.clickMeToRenew}</div>
<div class="fn__hr--b"></div> <div class="fn__hr--b"></div>
${window.siyuan.languages.account8} ${window.siyuan.languages.account8}
${window.siyuan.languages.account9} ${window.siyuan.languages.account9}
`; `;
} else { } else {
subscriptionHTML = `<div class="b3-chip b3-chip--primary"><svg class="ft__secondary"><use xlink:href="#iconVIP"></use></svg>${window.siyuan.languages.account10}</div> subscriptionHTML = `<div class="b3-chip b3-chip--primary"><svg class="ft__secondary"><use xlink:href="#iconVIP"></use></svg>${window.siyuan.languages.account10}</div>${renewHTML}`;
<div class="fn__hr--b"></div>
<div class="ft__on-surface ft__smaller">${window.siyuan.languages.account6} ${Math.max(0, Math.floor((window.siyuan.user.userSiYuanProExpireTime - new Date().getTime()) / 1000 / 60 / 60 / 24))} ${window.siyuan.languages.day} ${window.siyuan.languages.clickMeToRenew}</div>`;
} }
} }
return `<div class="fn__flex config-account"> return `<div class="fn__flex config-account">

View file

@ -0,0 +1,55 @@
/// #if !BROWSER
import {getCurrentWindow} from "@electron/remote";
/// #endif
import {Dialog} from "../../dialog";
import {isMobile} from "../../util/functions";
import {fetchPost} from "../../util/fetch";
export const setProxy = () => {
/// #if !BROWSER
if ("" === window.siyuan.config.system.networkProxy.scheme) {
console.log("network proxy [system]");
return;
}
const session = getCurrentWindow().webContents.session;
session.closeAllConnections().then(() => {
const proxyURL = `${window.siyuan.config.system.networkProxy.scheme}://${window.siyuan.config.system.networkProxy.host}:${window.siyuan.config.system.networkProxy.port}`;
session.setProxy({proxyRules: proxyURL}).then(
() => console.log("network proxy [" + proxyURL + "]"),
);
});
/// #endif
};
export const setAccessAuthCode = () => {
const dialog = new Dialog({
title: window.siyuan.languages.about5,
content: `<div class="b3-dialog__content">
<input class="b3-text-field fn__block" placeholder="${window.siyuan.languages.about5}" value="${window.siyuan.config.accessAuthCode}">
<div class="b3-label__text">${window.siyuan.languages.about6}</div>
</div>
<div class="b3-dialog__action">
<button class="b3-button b3-button--cancel">${window.siyuan.languages.cancel}</button><div class="fn__space"></div>
<button class="b3-button b3-button--text">${window.siyuan.languages.confirm}</button>
</div>`,
width: isMobile() ? "92vw" : "520px",
});
const inputElement = dialog.element.querySelector("input") as HTMLInputElement;
const btnsElement = dialog.element.querySelectorAll(".b3-button");
dialog.bindInput(inputElement, () => {
(btnsElement[1] as HTMLButtonElement).click();
});
inputElement.select();
btnsElement[0].addEventListener("click", () => {
dialog.destroy();
});
btnsElement[1].addEventListener("click", () => {
fetchPost("/api/system/setAccessAuthCode", {accessAuthCode: inputElement.value});
});
};
export const getCloudURL = (key: string) => {
const origin = window.siyuan.config.cloudRegion === 0 ? "https://ld246.com" : "https://liuyun.io";
return `${origin}/${key}`;
}

View file

@ -2,29 +2,3 @@ import {Dialog} from "../../dialog";
import {isMobile} from "../../util/functions"; import {isMobile} from "../../util/functions";
import {fetchPost} from "../../util/fetch"; import {fetchPost} from "../../util/fetch";
export const setAccessAuthCode = () => {
const dialog = new Dialog({
title: window.siyuan.languages.about5,
content: `<div class="b3-dialog__content">
<input class="b3-text-field fn__block" placeholder="${window.siyuan.languages.about5}" value="${window.siyuan.config.accessAuthCode}">
<div class="b3-label__text">${window.siyuan.languages.about6}</div>
</div>
<div class="b3-dialog__action">
<button class="b3-button b3-button--cancel">${window.siyuan.languages.cancel}</button><div class="fn__space"></div>
<button class="b3-button b3-button--text">${window.siyuan.languages.confirm}</button>
</div>`,
width: isMobile() ? "92vw" : "520px",
});
const inputElement = dialog.element.querySelector("input") as HTMLInputElement;
const btnsElement = dialog.element.querySelectorAll(".b3-button");
dialog.bindInput(inputElement, () => {
(btnsElement[1] as HTMLButtonElement).click();
});
inputElement.select();
btnsElement[0].addEventListener("click", () => {
dialog.destroy();
});
btnsElement[1].addEventListener("click", () => {
fetchPost("/api/system/setAccessAuthCode", {accessAuthCode: inputElement.value});
});
};

View file

@ -1,20 +0,0 @@
/// #if !BROWSER
import {getCurrentWindow} from "@electron/remote";
/// #endif
export const setProxy = () => {
/// #if !BROWSER
if ("" === window.siyuan.config.system.networkProxy.scheme) {
console.log("network proxy [system]");
return;
}
const session = getCurrentWindow().webContents.session;
session.closeAllConnections().then(() => {
const proxyURL = `${window.siyuan.config.system.networkProxy.scheme}://${window.siyuan.config.system.networkProxy.host}:${window.siyuan.config.system.networkProxy.port}`;
session.setProxy({proxyRules: proxyURL}).then(
() => console.log("network proxy [" + proxyURL + "]"),
);
});
/// #endif
};

View file

@ -1,5 +1,5 @@
import {Constants} from "../../constants"; import {Constants} from "../../constants";
import {setAccessAuthCode} from "../../config/util/setAccessAuthCode"; import {setAccessAuthCode} from "../../config/util/about";
import {Dialog} from "../../dialog"; import {Dialog} from "../../dialog";
import {fetchPost} from "../../util/fetch"; import {fetchPost} from "../../util/fetch";
import {confirmDialog} from "../../dialog/confirmDialog"; import {confirmDialog} from "../../dialog/confirmDialog";