From b2a1869089f00d1742e6885ec846bd402a492c40 Mon Sep 17 00:00:00 2001 From: David Ralph Date: Sat, 15 Jun 2024 00:06:58 +0100 Subject: [PATCH] fix: less bricks due to settings change --- src/features/misc/sections/Overview.jsx | 21 +++++++------------ src/features/misc/views/Widgets.jsx | 2 +- .../quicklinks/options/QuickLinksOptions.jsx | 7 ++++--- 3 files changed, 12 insertions(+), 18 deletions(-) diff --git a/src/features/misc/sections/Overview.jsx b/src/features/misc/sections/Overview.jsx index 7299fd00..8c1851b5 100644 --- a/src/features/misc/sections/Overview.jsx +++ b/src/features/misc/sections/Overview.jsx @@ -1,4 +1,4 @@ -import { useState, useEffect, useCallback } from 'react'; +import { useState, useEffect } from 'react'; import { MdOutlineDragIndicator } from 'react-icons/md'; import { sortableContainer, sortableElement } from '@muetab/react-sortable-hoc'; import { toast } from 'react-toastify'; @@ -13,6 +13,8 @@ import Message from './overview_skeletons/Message'; import EventBus from 'utils/eventbus'; +import defaults from 'config/default'; + const widget_name = { greeting: variables.getMessage('modals.main.settings.sections.greeting.title'), time: variables.getMessage('modals.main.settings.sections.time.title'), @@ -37,14 +39,7 @@ const SortableContainer = sortableContainer(({ children }) => ( const Overview = () => { const [items, setItems] = useState( () => - JSON.parse(localStorage.getItem('order')) || [ - 'greeting', - 'time', - 'quicklinks', - 'quote', - 'date', - 'message', - ], + JSON.parse(localStorage.getItem('order')) || defaults.order ); const arrayMove = (array, oldIndex, newIndex) => { @@ -59,8 +54,7 @@ const Overview = () => { }; const reset = () => { - const defaultOrder = ['greeting', 'time', 'quicklinks', 'quote', 'date', 'message']; - localStorage.setItem('order', JSON.stringify(defaultOrder)); + localStorage.setItem('order', JSON.stringify(defaults.order)); setItems(defaultOrder); toast(variables.getMessage('toasts.reset')); }; @@ -68,9 +62,9 @@ const Overview = () => { const enabled = (setting) => { switch (setting) { case 'quicklinks': - return localStorage.getItem('quicklinksenabled') === 'true'; + return localStorage.getItem('quicklinksenabled') !== 'false'; default: - return localStorage.getItem(setting) === 'true'; + return localStorage.getItem(setting) !== 'false'; } }; @@ -93,7 +87,6 @@ const Overview = () => { } }; - useEffect(() => { localStorage.setItem('order', JSON.stringify(items)); variables.stats.postEvent('setting', 'Widget order'); diff --git a/src/features/misc/views/Widgets.jsx b/src/features/misc/views/Widgets.jsx index 2b7f279f..8d695d0e 100644 --- a/src/features/misc/views/Widgets.jsx +++ b/src/features/misc/views/Widgets.jsx @@ -34,7 +34,7 @@ export function Widgets() { }; function enabled(key) { - return localStorage.getItem(key) !== 'falses'; + return localStorage.getItem(key) !== 'false'; } useEffect(() => { diff --git a/src/features/quicklinks/options/QuickLinksOptions.jsx b/src/features/quicklinks/options/QuickLinksOptions.jsx index 17dc891f..cb213894 100644 --- a/src/features/quicklinks/options/QuickLinksOptions.jsx +++ b/src/features/quicklinks/options/QuickLinksOptions.jsx @@ -11,12 +11,13 @@ import { AddModal } from 'components/Elements/AddModal'; import EventBus from 'utils/eventbus'; import { QuickLink } from './QuickLink'; import { getTitleFromUrl, isValidUrl } from 'utils/links'; +import defaults from './default'; class QuickLinksOptions extends PureComponent { constructor() { super(); this.state = { - items: JSON.parse(localStorage.getItem('quicklinks')), + items: JSON.parse(localStorage.getItem('quicklinks')) || defaults.quicklinks, showAddModal: false, urlError: '', iconError: '', @@ -41,7 +42,7 @@ class QuickLinksOptions extends PureComponent { } async addLink(name, url, icon) { - const data = JSON.parse(localStorage.getItem('quicklinks')); + const data = JSON.parse(localStorage.getItem('quicklinks')) || defaults.quicklinks; if (!url.startsWith('http://') && !url.startsWith('https://')) { url = 'https://' + url; @@ -87,7 +88,7 @@ class QuickLinksOptions extends PureComponent { } async editLink(og, name, url, icon) { - const data = JSON.parse(localStorage.getItem('quicklinks')); + const data = JSON.parse(localStorage.getItem('quicklinks')) || defaults.quicklinks; const dataobj = data.find((i) => i.key === og.key); dataobj.name = name || (await getTitleFromUrl(url)); dataobj.url = url;