3
0
mirror of https://github.com/reality/dbot.git synced 2024-12-26 04:32:37 +01:00

Merge pull request #18 from psquid/prefill-db

Create and/or fix a missing/incomplete DB on running.
This commit is contained in:
Samuel Clements 2012-03-07 10:37:23 -08:00
commit a7b8d3eadb

28
run.js
View File

@ -6,7 +6,33 @@ require('./snippets');
var DBot = function(timers) {
// Load external files
this.config = JSON.parse(fs.readFileSync('config.json', 'utf-8'));
this.db = JSON.parse(fs.readFileSync('db.json', 'utf-8'));
try {
this.db = JSON.parse(fs.readFileSync('db.json', 'utf-8'));
} catch (e) {
this.db = {};
} finally { /* fill any missing parts of the db; if this is a new DB, that's all of them */
if(!this.db.hasOwnProperty("bans")) {
this.db.bans = {};
}
if(!this.db.bans.hasOwnProperty("*")) {
this.db.bans["*"] = [];
}
if(!this.db.hasOwnProperty("quoteArrs")) {
this.db.quoteArrs = {};
}
if(!this.db.hasOwnProperty("kicks")) {
this.db.kicks = {};
}
if(!this.db.hasOwnProperty("kickers")) {
this.db.kickers = {};
}
if(!this.db.hasOwnProperty("modehate")) {
this.db.modehate = [];
}
if(!this.db.hasOwnProperty("locks")) {
this.db.locks = [];
}
}
// Populate bot properties with config data
this.name = this.config.name || 'dbox';