mirror of
https://github.com/streetwriters/notesnook.git
synced 2025-12-24 07:29:30 +01:00
web: limit set as homepage
This commit is contained in:
@@ -20,7 +20,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
import Config from "../utils/config";
|
||||
import { hashNavigate, getCurrentHash } from "../navigation";
|
||||
import { db } from "./db";
|
||||
import { sanitizeFilename } from "@notesnook/common";
|
||||
import { isFeatureAvailable, sanitizeFilename } from "@notesnook/common";
|
||||
import { useStore as useUserStore } from "../stores/user-store";
|
||||
import { HomePage, useStore as useSettingStore } from "../stores/setting-store";
|
||||
import { showToast } from "../utils/toast";
|
||||
@@ -49,6 +49,7 @@ import { ZipFile } from "../utils/streams/zip-stream";
|
||||
import { ConfirmDialog, showLogoutConfirmation } from "../dialogs/confirm";
|
||||
import { Home } from "../components/icons";
|
||||
import { MenuItem } from "@notesnook/ui";
|
||||
import { showFeatureNotAllowedToast } from "./toasts";
|
||||
|
||||
export const CREATE_BUTTON_MAP = {
|
||||
notes: {
|
||||
@@ -466,8 +467,14 @@ export function createSetDefaultHomepageMenuItem(
|
||||
type: "button",
|
||||
title: strings.setAsHomepage(),
|
||||
isChecked: homepage?.id === id && homepage?.type === type,
|
||||
onClick: () => {
|
||||
useSettingStore.getState().setHomepage({ id, type });
|
||||
onClick: async () => {
|
||||
if (homepage?.id === id && homepage?.type === type)
|
||||
useSettingStore.getState().setHomepage();
|
||||
else {
|
||||
const result = await isFeatureAvailable("customHomepage");
|
||||
if (!result.isAllowed) return showFeatureNotAllowedToast(result);
|
||||
useSettingStore.getState().setHomepage({ id, type });
|
||||
}
|
||||
},
|
||||
icon: Home.path
|
||||
} as MenuItem;
|
||||
|
||||
@@ -150,9 +150,15 @@ class SettingStore extends BaseStore<SettingStore> {
|
||||
Config.set("encryptBackups", encryptBackups);
|
||||
};
|
||||
|
||||
setHomepage = (homepage: HomePage) => {
|
||||
setHomepage = (homepage?: HomePage) => {
|
||||
this.set({ homepage });
|
||||
Config.set("homepage-v2", homepage);
|
||||
Config.set(
|
||||
"homepage-v2",
|
||||
homepage || {
|
||||
type: "route",
|
||||
id: "notes"
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
setDefaultSidebarTab = (defaultSidebarTab: "home" | "notebooks" | "tags") => {
|
||||
|
||||
Reference in New Issue
Block a user