fix local storage idiocy

This commit is contained in:
Matthew Hodgson 2017-01-21 22:27:55 +01:00
parent 532f4e59c9
commit 39c122fe4f
2 changed files with 6 additions and 3 deletions

View file

@ -150,7 +150,8 @@ module.exports = {
}, },
getLocalSettings: function() { getLocalSettings: function() {
return localStorage.getItem('mx_local_settings'); var localSettingsString = localStorage.getItem('mx_local_settings') || '{}';
return JSON.parse(localSettingsString);
}, },
getLocalSetting: function(type, defaultValue = null) { getLocalSetting: function(type, defaultValue = null) {
@ -162,7 +163,7 @@ module.exports = {
var settings = this.getLocalSettings(); var settings = this.getLocalSettings();
settings[type] = value; settings[type] = value;
// FIXME: handle errors // FIXME: handle errors
localStorage.setItem('mx_local_settings', settings); localStorage.setItem('mx_local_settings', JSON.stringify(settings));
}, },
isFeatureEnabled: function(feature: string): boolean { isFeatureEnabled: function(feature: string): boolean {

View file

@ -485,7 +485,9 @@ module.exports = React.createClass({
<li><label>Device key:</label> <span><code><b>{identityKey}</b></code></span></li> <li><label>Device key:</label> <span><code><b>{identityKey}</b></code></span></li>
</ul> </ul>
</div> </div>
{ CRYPTO_SETTINGS_LABELS.map( this._renderLocalSetting ) } <div className="mx_UserSettings_section">
{ CRYPTO_SETTINGS_LABELS.map( this._renderLocalSetting ) }
</div>
</div> </div>
); );
}, },