diff --git a/app/src/config/account.ts b/app/src/config/account.ts index 23e3bb6f1..d9cc7db31 100644 --- a/app/src/config/account.ts +++ b/app/src/config/account.ts @@ -34,7 +34,7 @@ ${window.siyuan.languages.account2} ${window.siyuan.languages.freeSub} - +
`; if (window.siyuan.user) { let userTitlesHTML = ""; @@ -368,6 +368,9 @@ ${window.siyuan.languages.account8}`; } } } + if (!window.siyuan.user || (window.siyuan.user && window.siyuan.user.userSiYuanSubscriptionStatus === -1)){ + html = `
`; + } if (window.siyuan.config.account.displayTitle && window.siyuan.user) { window.siyuan.user.userTitles.forEach(item => { html += `
${item.icon}
`; diff --git a/app/src/config/index.ts b/app/src/config/index.ts index 951637c72..5b59f14f0 100644 --- a/app/src/config/index.ts +++ b/app/src/config/index.ts @@ -20,7 +20,7 @@ export const openSetting = () => { } }); if (exitDialog) { - return; + return exitDialog; } const height = Math.min(window.innerHeight * .9, Math.max(window.innerHeight * .7, 52 * 11)); const dialog = new Dialog({ @@ -128,4 +128,5 @@ export const openSetting = () => { }); editor.element = dialog.element.querySelector('.b3-tab-container[data-name="editor"]'); editor.bindEvent(); + return dialog; }; diff --git a/app/src/types/index.d.ts b/app/src/types/index.d.ts index 525ddf73f..c16ccf49f 100644 --- a/app/src/types/index.d.ts +++ b/app/src/types/index.d.ts @@ -99,6 +99,7 @@ interface ISiyuan { userSiYuanProExpireTime: number // -1 终身会员;0 普通用户;> 0 过期时间 userSiYuanSubscriptionPlan: number // 0 年付订阅/终生;1 教育优惠;2 订阅试用 userSiYuanSubscriptionType: number // 0 年付;1 终生;2 月付 + userSiYuanSubscriptionStatus: number // -1:未订阅,0:订阅可用,1:订阅封禁,2:订阅过期 userToken: string userTitles: { name: string, icon: string, desc: string }[] }, diff --git a/app/src/util/onGetConfig.ts b/app/src/util/onGetConfig.ts index 5e003ec09..f088d30cf 100644 --- a/app/src/util/onGetConfig.ts +++ b/app/src/util/onGetConfig.ts @@ -20,6 +20,7 @@ import {getOpenNotebookCount} from "./pathName"; import {openFileById} from "../editor/util"; import {focusByRange} from "../protyle/util/selection"; import {exitSiYuan} from "../dialog/processSystem"; +import {openSetting} from "../config"; const matchKeymap = (keymap: Record, key1: "general" | "editor", key2?: "general" | "insert" | "heading" | "list" | "table") => { if (key1 === "general") { @@ -270,6 +271,10 @@ const initBar = () => { }); resizeTabs(); }); + document.getElementById("toolbarVIP").addEventListener("click", (event) => { + const dialogSetting = openSetting(); + dialogSetting.element.querySelector('.b3-tab-bar [data-name="account"]').dispatchEvent(new CustomEvent("click")); + }); document.getElementById("barDailyNote").addEventListener("click", (event) => { if (getOpenNotebookCount() < 2) { newDailyNote();