2016-11-18 06:30:38 +01:00
|
|
|
module.exports = (lib) => {
|
|
|
|
lib.trigger.add({
|
|
|
|
name: 'trigger',
|
|
|
|
call: /^!trigger/i,
|
|
|
|
level: 100,
|
|
|
|
active: 1,
|
|
|
|
func: (e) => {
|
2016-11-18 07:56:12 +01:00
|
|
|
var args = e.message.split(' ');
|
2016-11-19 06:33:59 +01:00
|
|
|
lib.getcfg('trigger', cb => {
|
|
|
|
if(!cb)
|
|
|
|
cb = lib.genStdTrigger();
|
|
|
|
switch(args[1]) {
|
|
|
|
case "std":
|
|
|
|
e.reply(JSON.stringify(lib.genStdTrigger()));
|
|
|
|
break;
|
|
|
|
case "toggle":
|
|
|
|
if(trigger = args[2].toLowerCase()) {
|
|
|
|
cb = triggertoggle(cb, trigger);
|
|
|
|
writecfg('trigger', e.network+e.channel, JSON.stringify(cb), cbwc => {
|
|
|
|
if(!cbwc) {
|
|
|
|
e.reply("trigger "+ trigger +" in channel "+e.channel.getName() + lib.bot.format.get(cb[trigger]?'green':'red')+" "+(cb[trigger]?"activated":"deactivated"));
|
|
|
|
lib.getChanTrigger();
|
|
|
|
}
|
|
|
|
else
|
|
|
|
e.reply(cbwc);
|
|
|
|
});
|
2016-11-18 07:56:12 +01:00
|
|
|
}
|
2016-11-19 06:33:59 +01:00
|
|
|
break;
|
|
|
|
default:
|
|
|
|
var output = "";
|
|
|
|
e.reply("Trigger in "+e.channel.getName()+" (green: activated, red: deactivated):");
|
|
|
|
for(var key in cb)
|
|
|
|
output += lib.bot.format.get(cb[key]?'green':'red')+" "+key;
|
|
|
|
e.reply(output);
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}, e.network+e.channel);
|
2016-11-18 06:30:38 +01:00
|
|
|
},
|
|
|
|
desc: 'muh'
|
|
|
|
});
|
2016-11-19 06:33:59 +01:00
|
|
|
|
|
|
|
var triggertoggle = (trigger, key) => {
|
|
|
|
if(key in trigger)
|
|
|
|
trigger[key] = !trigger[key];
|
|
|
|
return trigger;
|
|
|
|
};
|
|
|
|
|
|
|
|
var writecfg = (kat, key, value, cb) => {
|
|
|
|
lib.sql.query("select * from `f0ck`.`cfg` where `class` = ? && `key` = ? limit 1", [kat, key], (err, rows) => {
|
|
|
|
if(rows.length > 0) {
|
|
|
|
lib.sql.query("update `f0ck`.`cfg` set `value` = ? where `class` = ? && `key` = ?", [value, kat, key], (err) => {
|
|
|
|
if(cb) cb(err);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
else {
|
|
|
|
lib.sql.query("insert into `f0ck`.`cfg` (`class`,`key`,`value`,`type`) values (?,?,?,?)", [kat, key, value, 'json'], (err) => {
|
|
|
|
if(cb) cb(err);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
});
|
|
|
|
};
|
2016-11-18 06:30:38 +01:00
|
|
|
};
|