diff --git a/src/App.jsx b/src/App.jsx index 25228ea1..0397707c 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -11,6 +11,11 @@ import { ToastContainer } from 'react-toastify'; export default class App extends React.PureComponent { componentDidMount() { + // 4.0 -> 5.0 + if (!localStorage.getItem('showWelcome')) { + SettingsFunctions.moveSettings(); + } + if (!localStorage.getItem('firstRun')) { SettingsFunctions.setDefaultSettings(); } diff --git a/src/components/modals/main/settings/sections/Advanced.jsx b/src/components/modals/main/settings/sections/Advanced.jsx index 0c865eef..ed0cfde4 100644 --- a/src/components/modals/main/settings/sections/Advanced.jsx +++ b/src/components/modals/main/settings/sections/Advanced.jsx @@ -26,7 +26,7 @@ export default class AdvancedSettings extends React.PureComponent { localStorage.setItem(key, content[key]); } - toast(this.language.toasts.imported); + toast(window.language.toasts.imported); } render() { diff --git a/src/index.js b/src/index.js index a4f4c450..9d1cb06e 100644 --- a/src/index.js +++ b/src/index.js @@ -19,6 +19,10 @@ const languagecode = localStorage.getItem('language') || 'en_GB'; // we set things to window. so they're global and we avoid passing the translation strings as props to each component window.languagecode = languagecode.replace('-', '_'); +if (languagecode === 'en') { + window.languagecode = 'en_GB'; +} + // these are merged so if a string is untranslated it doesn't break mue window.language = merge(require('./translations/en_GB.json'), require(`./translations/${window.languagecode}.json`)); diff --git a/src/modules/helpers/settings.js b/src/modules/helpers/settings.js index f9c06656..97186853 100644 --- a/src/modules/helpers/settings.js +++ b/src/modules/helpers/settings.js @@ -160,4 +160,25 @@ export default class SettingsFunctions { █████████████████████████████████████████████████████████████ `); } + + static moveSettings() { + localStorage.setItem('order', "[\"greeting\", \"time\", \"quicklinks\", \"quote\", \"date\"]"); + localStorage.setItem('backgroundType', 'api'); + localStorage.setItem('timeformat', 'twentyfourhour'); + localStorage.setItem('bgtransition', true); + localStorage.setItem('tempformat', 'celsius'); + localStorage.setItem('theme', 'auto'); + localStorage.setItem('toastDisplayTime', 2500); + localStorage.setItem('widgetzoom', 100); + localStorage.setItem('fontweight', 400); + localStorage.setItem('language', window.languagecode); + localStorage.setItem('tabname', window.language.tabname); + localStorage.setItem('debugtimeout', 0); + localStorage.setItem('showWelcome', true); + localStorage.setItem('quicklinks', '[]'); + localStorage.setItem('customBackgroundColour', "{\"angle\":\"180\",\"gradient\":[{\"colour\":\"#ffb032\",\"stop\":0}],\"type\":\"linear\"}"); + localStorage.setItem('firstRun', true); + + window.location.reload(); + } }