muh
This commit is contained in:
parent
a6495dd213
commit
a291e4f0a1
49
src/cfg.js
Normal file
49
src/cfg.js
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
var mysql = require('mysql');
|
||||||
|
|
||||||
|
var self = Cfg.prototype;
|
||||||
|
var haDC = () => {
|
||||||
|
self.sql = mysql.createConnection(require('../cfg/mysql.json'));
|
||||||
|
self.sql.connect((err) => {
|
||||||
|
if(err) setTimeout(haDC, 2000);
|
||||||
|
});
|
||||||
|
self.sql.on('error', (err) => {
|
||||||
|
if(err.code === 'PROTOCOL_CONNECTION_LOST') haDC();
|
||||||
|
});
|
||||||
|
};
|
||||||
|
haDC();
|
||||||
|
|
||||||
|
module.exports = Cfg;
|
||||||
|
function Cfg() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
self.read = (cb, kat, key) => {
|
||||||
|
// main, websrv, irc
|
||||||
|
var out = {};
|
||||||
|
self.sql.query("select * from `f0ck`.`cfg`" + (kat?" where `class` = '"+kat+"'"+(key?" && `key` = '"+key+"'":""):""), (err, rows) => {
|
||||||
|
if(err || rows.length < 1)
|
||||||
|
cb(err);
|
||||||
|
else {
|
||||||
|
rows.forEach(e => {
|
||||||
|
out[e.key] = ((type, value) => {
|
||||||
|
switch(type) {
|
||||||
|
case 'string':
|
||||||
|
return value;
|
||||||
|
break;
|
||||||
|
case 'int':
|
||||||
|
return parseInt(value);
|
||||||
|
break;
|
||||||
|
case 'bool':
|
||||||
|
return (value === 'true')?true:false;
|
||||||
|
break;
|
||||||
|
case 'json':
|
||||||
|
return JSON.parse(value);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
})(e.type, e.value);
|
||||||
|
});
|
||||||
|
if(cb)
|
||||||
|
cb( key?out[key]:out );
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
67
src/lib.js
67
src/lib.js
@ -4,7 +4,6 @@ var https = require('https');
|
|||||||
var exec = require('child_process').exec;
|
var exec = require('child_process').exec;
|
||||||
var crypto = require('crypto');
|
var crypto = require('crypto');
|
||||||
var request = require('request');
|
var request = require('request');
|
||||||
var mysql = require('mysql');
|
|
||||||
|
|
||||||
var self = Lib.prototype;
|
var self = Lib.prototype;
|
||||||
self.bot = require('coffea')();
|
self.bot = require('coffea')();
|
||||||
@ -25,29 +24,16 @@ self.trigger = {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
var haDC = () => {
|
|
||||||
self.sql = mysql.createConnection(require('../cfg/mysql.json'));
|
|
||||||
self.sql.connect((err) => {
|
|
||||||
if(err) setTimeout(haDC, 2000);
|
|
||||||
});
|
|
||||||
self.sql.on('error', (err) => {
|
|
||||||
if(err.code === 'PROTOCOL_CONNECTION_LOST') haDC();
|
|
||||||
});
|
|
||||||
};
|
|
||||||
haDC();
|
|
||||||
|
|
||||||
module.exports = Lib;
|
module.exports = Lib;
|
||||||
function Lib() {
|
function Lib(config) {
|
||||||
self.cfg = {};
|
self.cfg = config;
|
||||||
self.getcfg('main', cfg => {
|
self.debug = self.cfg.main.debug;
|
||||||
self.cfg.main = cfg;
|
self.loadIRC();
|
||||||
self.debug = self.cfg.main.debug;
|
self.loadUser((cb) => console.log((cb)?"Admins wurden geladen":"Admins konnten nicht geladen werden"));
|
||||||
self.loadIRC();
|
self.loadTrigger();
|
||||||
self.loadUser((cb) => console.log((cb)?"Admins wurden geladen":"Admins konnten nicht geladen werden"));
|
self.loadEvents();
|
||||||
self.loadTrigger();
|
self.getChanTrigger();
|
||||||
self.loadEvents();
|
|
||||||
self.getChanTrigger();
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
self.getUserlevel = (user, network, channel, cb) => {
|
self.getUserlevel = (user, network, channel, cb) => {
|
||||||
@ -229,40 +215,9 @@ self.levelToModes = level => {
|
|||||||
return "";
|
return "";
|
||||||
};
|
};
|
||||||
|
|
||||||
self.getcfg = (kat, cb, key) => {
|
|
||||||
// main, websrv, irc
|
|
||||||
var out = {};
|
|
||||||
self.sql.query("select * from `f0ck`.`cfg` where `class` = ?"+(key?" && `key` = '"+key+"'":""), kat, (err, rows) => {
|
|
||||||
if(err || rows.length < 1)
|
|
||||||
cb(err);
|
|
||||||
else {
|
|
||||||
rows.forEach(e => {
|
|
||||||
out[e.key] = ((type, value) => {
|
|
||||||
switch(type) {
|
|
||||||
case 'string':
|
|
||||||
return value;
|
|
||||||
break;
|
|
||||||
case 'int':
|
|
||||||
return parseInt(value);
|
|
||||||
break;
|
|
||||||
case 'bool':
|
|
||||||
return (value === 'true')?true:false;
|
|
||||||
break;
|
|
||||||
case 'json':
|
|
||||||
return JSON.parse(value);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
})(e.type, e.value);
|
|
||||||
});
|
|
||||||
if(cb)
|
|
||||||
cb( key?out[key]:out );
|
|
||||||
}
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
self.loadIRC = () => {
|
self.loadIRC = () => {
|
||||||
self.getcfg('irc', cfg => {
|
//self.getcfg('irc', cfg => {
|
||||||
self.cfg.irc = cfg;
|
// self.cfg.irc = cfg;
|
||||||
self.cfg.irc.irccfg.forEach(e => {
|
self.cfg.irc.irccfg.forEach(e => {
|
||||||
self.bot.add({
|
self.bot.add({
|
||||||
"name": e.name,
|
"name": e.name,
|
||||||
@ -278,7 +233,7 @@ self.loadIRC = () => {
|
|||||||
});
|
});
|
||||||
console.log("Server "+e.name+" wurde geladen");
|
console.log("Server "+e.name+" wurde geladen");
|
||||||
});
|
});
|
||||||
});
|
//});
|
||||||
};
|
};
|
||||||
|
|
||||||
self.getChanTrigger = () => {
|
self.getChanTrigger = () => {
|
||||||
|
12
src/main.js
12
src/main.js
@ -1,5 +1,13 @@
|
|||||||
|
var Cfg = require('./cfg.js');
|
||||||
var Lib = require('./lib.js');
|
var Lib = require('./lib.js');
|
||||||
var Websrv = require('./websrv.js');
|
var Websrv = require('./websrv.js');
|
||||||
|
|
||||||
var lib = new Lib();
|
var cfg = new Cfg();
|
||||||
var websrv = new Websrv(lib);
|
cfg.read(config => {
|
||||||
|
if(config) {
|
||||||
|
var lib = new Lib(config);
|
||||||
|
var websrv = new Websrv(lib);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
console.log(config);
|
||||||
|
});
|
Loading…
x
Reference in New Issue
Block a user