mirror of
https://github.com/chylex/Discord-History-Tracker.git
synced 2025-04-13 15:27:16 +03:00
parent
5f095fae7d
commit
8c4991eafc
@ -240,7 +240,24 @@ var STATE = (function(){
|
||||
|
||||
ROOT.settings = {};
|
||||
|
||||
var defineSettingProperty = (property, defaultValue) => {
|
||||
var getStorageItem = (property) => {
|
||||
try{
|
||||
return localStorage.getItem(property);
|
||||
}catch(e){
|
||||
console.error(e);
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
var setStorageItem = (property, value) => {
|
||||
try{
|
||||
localStorage.setItem(property, value);
|
||||
}catch(e){
|
||||
console.error(e);
|
||||
}
|
||||
};
|
||||
|
||||
var defineSettingProperty = (property, defaultValue, storageToValue) => {
|
||||
var name = "_"+property;
|
||||
|
||||
Object.defineProperty(ROOT.settings, property, {
|
||||
@ -248,15 +265,28 @@ var STATE = (function(){
|
||||
set: (value => {
|
||||
ROOT.settings[name] = value;
|
||||
triggerMessagesRefreshed();
|
||||
setStorageItem(property, value);
|
||||
})
|
||||
});
|
||||
|
||||
ROOT.settings[name] = defaultValue;
|
||||
}
|
||||
var stored = getStorageItem(property);
|
||||
|
||||
if (stored !== null){
|
||||
stored = storageToValue(stored);
|
||||
}
|
||||
|
||||
ROOT.settings[name] = stored === null ? defaultValue : stored;
|
||||
};
|
||||
|
||||
defineSettingProperty("enableImagePreviews", true);
|
||||
defineSettingProperty("enableFormatting", true);
|
||||
defineSettingProperty("enableAnimatedEmoji", true);
|
||||
var fromBooleanString = (value) => {
|
||||
if (value === "true") return true;
|
||||
if (value === "false") return false;
|
||||
return null;
|
||||
};
|
||||
|
||||
defineSettingProperty("enableImagePreviews", true, fromBooleanString);
|
||||
defineSettingProperty("enableFormatting", true, fromBooleanString);
|
||||
defineSettingProperty("enableAnimatedEmoji", true, fromBooleanString);
|
||||
|
||||
// End
|
||||
return ROOT;
|
||||
|
Loading…
x
Reference in New Issue
Block a user