mirror of
https://github.com/ether/etherpad-lite.git
synced 2025-06-15 10:44:41 -04:00
Merge pull request #1999 from s1341/fix_json_is_bad
strip off trailing commas
This commit is contained in:
commit
1fa2b32854
3 changed files with 11 additions and 8 deletions
|
@ -1,5 +1,5 @@
|
||||||
/**
|
/**
|
||||||
* The Settings Modul reads the settings out of settings.json and provides
|
* The Settings Modul reads the settings out of settings.json and provides
|
||||||
* this information to the other modules
|
* this information to the other modules
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -24,7 +24,7 @@ var os = require("os");
|
||||||
var path = require('path');
|
var path = require('path');
|
||||||
var argv = require('./Cli').argv;
|
var argv = require('./Cli').argv;
|
||||||
var npm = require("npm/lib/npm.js");
|
var npm = require("npm/lib/npm.js");
|
||||||
var vm = require('vm');
|
var jsonminify = require("jsonminify");
|
||||||
var log4js = require("log4js");
|
var log4js = require("log4js");
|
||||||
var randomString = require('ep_etherpad-lite/static/js/pad_utils').randomString;
|
var randomString = require('ep_etherpad-lite/static/js/pad_utils').randomString;
|
||||||
|
|
||||||
|
@ -48,7 +48,7 @@ exports.faviconTimeslider = "../../" + exports.favicon;
|
||||||
* The IP ep-lite should listen to
|
* The IP ep-lite should listen to
|
||||||
*/
|
*/
|
||||||
exports.ip = "0.0.0.0";
|
exports.ip = "0.0.0.0";
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The Port ep-lite should listen to
|
* The Port ep-lite should listen to
|
||||||
*/
|
*/
|
||||||
|
@ -166,8 +166,8 @@ exports.reloadSettings = function reloadSettings() {
|
||||||
var settings;
|
var settings;
|
||||||
try {
|
try {
|
||||||
if(settingsStr) {
|
if(settingsStr) {
|
||||||
settings = vm.runInContext('exports = '+settingsStr, vm.createContext(), "settings.json");
|
settingsStr = jsonminify(settingsStr).replace(",]","]").replace(",}","}");
|
||||||
settings = JSON.parse(JSON.stringify(settings)); // fix objects having constructors of other vm.context
|
settings = JSON.parse(settingsStr);
|
||||||
}
|
}
|
||||||
}catch(e){
|
}catch(e){
|
||||||
console.error('There was an error processing your settings.json file: '+e.message);
|
console.error('There was an error processing your settings.json file: '+e.message);
|
||||||
|
@ -195,7 +195,7 @@ exports.reloadSettings = function reloadSettings() {
|
||||||
console.warn("Unknown Setting: '" + i + "'. This setting doesn't exist or it was removed");
|
console.warn("Unknown Setting: '" + i + "'. This setting doesn't exist or it was removed");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
log4js.configure(exports.logconfig);//Configure the logging appenders
|
log4js.configure(exports.logconfig);//Configure the logging appenders
|
||||||
log4js.setGlobalLogLevel(exports.loglevel);//set loglevel
|
log4js.setGlobalLogLevel(exports.loglevel);//set loglevel
|
||||||
log4js.replaceConsole();
|
log4js.replaceConsole();
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
"keywords" : ["etherpad", "realtime", "collaborative", "editor"],
|
"keywords" : ["etherpad", "realtime", "collaborative", "editor"],
|
||||||
"author" : "Peter 'Pita' Martischka <petermartischka@googlemail.com> - Primary Technology Ltd",
|
"author" : "Peter 'Pita' Martischka <petermartischka@googlemail.com> - Primary Technology Ltd",
|
||||||
"contributors" : [
|
"contributors" : [
|
||||||
{ "name": "John McLear" },
|
{ "name": "John McLear" },
|
||||||
{ "name": "Hans Pinckaers" },
|
{ "name": "Hans Pinckaers" },
|
||||||
{ "name": "Robin Buse" },
|
{ "name": "Robin Buse" },
|
||||||
{ "name": "Marcel Klehr" }
|
{ "name": "Marcel Klehr" }
|
||||||
|
@ -39,6 +39,7 @@
|
||||||
"languages4translatewiki" : "0.1.3",
|
"languages4translatewiki" : "0.1.3",
|
||||||
"swagger-node-express" : "1.2.3",
|
"swagger-node-express" : "1.2.3",
|
||||||
"channels" : "0.0.x",
|
"channels" : "0.0.x",
|
||||||
|
"jsonminify" : "0.2.2",
|
||||||
"measured" : "0.1.3"
|
"measured" : "0.1.3"
|
||||||
},
|
},
|
||||||
"bin": { "etherpad-lite": "./node/server.js" },
|
"bin": { "etherpad-lite": "./node/server.js" },
|
||||||
|
@ -47,7 +48,7 @@
|
||||||
},
|
},
|
||||||
"engines" : { "node" : ">=0.6.3",
|
"engines" : { "node" : ">=0.6.3",
|
||||||
"npm" : ">=1.0"
|
"npm" : ">=1.0"
|
||||||
},
|
},
|
||||||
"repository" : { "type" : "git",
|
"repository" : { "type" : "git",
|
||||||
"url" : "http://github.com/ether/etherpad-lite.git"
|
"url" : "http://github.com/ether/etherpad-lite.git"
|
||||||
},
|
},
|
||||||
|
|
|
@ -55,6 +55,8 @@ $(document).ready(function () {
|
||||||
|
|
||||||
function isJSONClean(data){
|
function isJSONClean(data){
|
||||||
var cleanSettings = JSON.minify(data);
|
var cleanSettings = JSON.minify(data);
|
||||||
|
// this is a bit naive. In theory some key/value might contain the sequences ',]' or ',}'
|
||||||
|
cleanSettings = cleanSettings.replace(",]","]").replace(",}","}");
|
||||||
try{
|
try{
|
||||||
var response = jQuery.parseJSON(cleanSettings);
|
var response = jQuery.parseJSON(cleanSettings);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue