fix: 4.0 to 5.0 should now work

This commit is contained in:
David Ralph
2021-04-17 21:38:16 +01:00
parent b429ae2158
commit 44125d7471
3 changed files with 27 additions and 24 deletions

View File

@@ -11,15 +11,17 @@ 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();
window.location.reload();
}
// 4.0 -> 5.0 (the key below is only on 5.0)
if (!localStorage.getItem('order')) {
SettingsFunctions.moveSettings();
window.location.reload();
}
SettingsFunctions.loadSettings();
EventBus.on('refresh', (data) => {

View File

@@ -5,13 +5,18 @@ import SettingsFunctions from '../../../../modules/helpers/settings';
export default function ResetModal(props) {
const language = window.language.modals.main.settings.sections.advanced.reset_modal;
const reset = () => {
SettingsFunctions.setDefaultSettings('reset');
window.location.reload();
}
return (
<>
<h3 style={{'textAlign': 'center'}}>{language.title}</h3>
<h4>{language.question}</h4>
<p>{language.information}</p>
<div className='resetfooter'>
<button className='reset' style={{ 'marginLeft': '0' }} onClick={() => SettingsFunctions.setDefaultSettings('reset')}>{window.language.modals.main.settings.buttons.reset}</button>
<button className='reset' style={{ 'marginLeft': '0' }} onClick={() => reset()}>{window.language.modals.main.settings.buttons.reset}</button>
<button className='import' style={{ 'marginLeft': '5px' }} onClick={props.modalClose}>{language.cancel}</button>
</div>
</>

View File

@@ -69,7 +69,6 @@ export default class SettingsFunctions {
// Finally we set this to true so it doesn't run the function on every load
localStorage.setItem('firstRun', true);
window.location.reload();
}
static loadSettings(hotreload) {
@@ -162,23 +161,20 @@ 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);
if (Object.keys(localStorage).length === 0) {
return this.setDefaultSettings();
}
window.location.reload();
let settings = {};
for (const key of Object.keys(localStorage)) {
settings[key] = localStorage.getItem(key);
}
localStorage.clear();
this.setDefaultSettings();
Object.keys(settings).forEach(key => {
localStorage.setItem(key, settings[key]);
});
}
}