fix: less bricks due to settings change

This commit is contained in:
David Ralph
2024-06-15 00:06:58 +01:00
parent 15cea9bc3d
commit b2a1869089
3 changed files with 12 additions and 18 deletions

View File

@@ -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');

View File

@@ -34,7 +34,7 @@ export function Widgets() {
};
function enabled(key) {
return localStorage.getItem(key) !== 'falses';
return localStorage.getItem(key) !== 'false';
}
useEffect(() => {

View File

@@ -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;