Merge pull request #594 from csduarte/bash-14

BASH-14 Set default server/team in settings
This commit is contained in:
Yuya Ochiai 2017-10-14 21:38:45 +09:00 committed by GitHub
commit e46920ee9e
2 changed files with 16 additions and 2 deletions

View file

@ -1,6 +1,8 @@
'use strict';
const fs = require('fs');
const path = require('path');
let deepmerge = require('deepmerge').default;
if (process.env.TEST) {
deepmerge = require('deepmerge'); // eslint-disable-line
@ -14,7 +16,7 @@ function merge(base, target) {
return Object.assign({}, base, target);
}
function deepMergeArray(dest) {
function deepMergeArray(source, dest) {
return dest;
}
@ -27,7 +29,7 @@ function loadDefault(version, spellCheckerLocale) {
const base = baseConfig[ver] || baseConfig.default;
const override = overrideConfig[ver] || {};
const defaults = deepmerge(base, override, {clone: true, arrayMerge: deepMergeArray});
const defaults = deepmerge(base, override, {arrayMerge: deepMergeArray});
return Object.assign(defaults, {
spellCheckerLocale: spellCheckerLocale || defaults.spellCheckerLocale || 'en-US'
@ -87,6 +89,12 @@ module.exports = {
if (config.version != settingsVersion) { // eslint-disable-line
throw new Error('version ' + config.version + ' is not equal to ' + settingsVersion);
}
const dir = path.dirname(configFile);
if (!fs.existsSync(dir)) {
fs.mkdirSync(dir);
}
var data = JSON.stringify(config, null, ' ');
fs.writeFileSync(configFile, data, 'utf8');
},

View file

@ -71,6 +71,12 @@ try {
const spellCheckerLocale = SpellChecker.getSpellCheckerLocale(app.getLocale());
config = settings.loadDefault(null, spellCheckerLocale);
console.log('Failed to read or upgrade config.json', e);
if (!config.teams.length && config.defaultTeam) {
config.teams.push(config.defaultTeam);
const configFile = app.getPath('userData') + '/config.json';
settings.writeFileSync(configFile, config);
}
}
ipcMain.on('update-config', () => {