sliding text clock: BUGFIX -settings not writing styling info

pull/2178/head
adrian w kirk 2022-09-30 01:34:40 +01:00
parent 6b05043b01
commit bd2fad743d
2 changed files with 36 additions and 30 deletions

View File

@ -699,28 +699,19 @@ const PREFERENCE_FILE = "slidingtext.settings.json";
function loadSettings() { function loadSettings() {
try { try {
var settings = require("Storage").readJSON(PREFERENCE_FILE); var settings = require("Storage").readJSON(PREFERENCE_FILE);
if (settings != null) { if (settings == null || settings.date_formatter == null) {
console.log("loaded settings:" + JSON.stringify(settings)); settings.date_formatter = "en"
if (settings.date_format != null) {
var format = setting.date_format;
if(settings.date_formatter != null)
format = settings.date_format;
setDateformat(format);
initDisplay(settings);
}
if (settings.color_scheme != null) {
setColorScheme(settings.color_scheme);
}
if (settings.enable_live_controls == null) {
settings.enable_live_controls = (bangleVersion() <= 1);
}
enable_live_controls = settings.enable_live_controls;
} else {
console.log("no settings to load");
enable_live_controls = (bangleVersion() <= 1);
} }
console.log("loaded settings:" + JSON.stringify(settings));
setDateformat(settings.date_formatter);
initDisplay(settings);
if (settings.color_scheme != null) {
setColorScheme(settings.color_scheme);
}
if (settings.enable_live_controls == null) {
settings.enable_live_controls = (bangleVersion() <= 1);
}
enable_live_controls = settings.enable_live_controls;
console.log("enable_live_controls=" + enable_live_controls); console.log("enable_live_controls=" + enable_live_controls);
} catch (e) { } catch (e) {
console.log("failed to load settings:" + e); console.log("failed to load settings:" + e);

View File

@ -8,9 +8,8 @@
} }
console.log("loaded:" + JSON.stringify(settings)); console.log("loaded:" + JSON.stringify(settings));
var locale_mappings = { var locale_mappings = {
'en' : { date_format: 'en' }, 'en' : { date_formatter: 'en' },
'en patchwork': { 'en patchwork': {
date_format: 'en patchwork',
date_formatter: 'en', date_formatter: 'en',
row_types: { row_types: {
large:{ large:{
@ -38,9 +37,8 @@
} }
] ]
}, },
'en2': { date_format: 'en2' }, 'en2': { date_formatter: 'en2' },
'en2 patchwork': { date_format: 'en2 patchwork', 'en2 patchwork': { date_formatter: 'en2',
date_formatter: 'en2',
row_types: { row_types: {
vsmall: { vsmall: {
scroll_off: ['right'], scroll_off: ['right'],
@ -83,15 +81,32 @@
}, },
] ]
}, },
'French': { date_format:'fr'}, 'French': { date_formatter:'fr'},
'German': { date_format: 'de'}, 'German': { date_formatter: 'de'},
'Spanish': { date_format: 'es'}, 'Spanish': { date_formatter: 'es'},
'Japanese': { date_format: 'jp'}, 'Japanese': { date_formatter: 'jp'},
} }
var locales = Object.keys(locale_mappings); var locales = Object.keys(locale_mappings);
function writeSettings() { function writeSettings() {
if(settings.date_format == null){
settings.date_format = 'en';
}
var styling = locale_mappings[settings.date_format];
settings.remove("date_formatter");
if(styling.date_formatter != null)
settings.date_formatter = styling.date_formatter;
settings.remove("row_types");
if(styling.row_types != null)
settings.row_types = styling.row_types;
settings.remove("row_defs");
if(styling.row_defs != null)
settings.row_defs = styling.row_defs;
console.log("saving:" + JSON.stringify(settings)); console.log("saving:" + JSON.stringify(settings));
require('Storage').writeJSON(PREFERENCE_FILE, settings); require('Storage').writeJSON(PREFERENCE_FILE, settings);
} }