f0ckv1/src/trigger/sync.js

27 lines
891 B
JavaScript
Raw Normal View History

2016-09-15 00:05:18 +02:00
module.exports = (lib) => {
2016-09-14 20:07:10 +02:00
lib.trigger.add({
name: 'sync',
call: /^!sync$/i,
level: 100,
active: 1,
func: (e) => {
2016-09-15 19:17:07 +02:00
lib.bot.names(e.channel, e.network, names => {
2016-09-14 20:07:10 +02:00
Object.keys(names).forEach(key => {
2016-09-15 19:17:07 +02:00
if(key === lib.bot.me.nick) {
return;
}
2016-09-15 00:05:18 +02:00
lib.bot.whois(key, e.network, (err, data) => {
2016-09-15 19:43:57 +02:00
if(data.channels[e.channel]) {
2016-09-16 00:04:01 +02:00
var h = lib.modesToString(data.channels[e.channel]), q = "";
2016-09-15 19:17:07 +02:00
if(lib.admins[data.account])
2016-09-16 00:14:11 +02:00
q = lib.levelToModes(lib.admins[data.account].level);
2016-09-16 00:04:01 +02:00
var diff = lib.groupUserModes(lib.userModeDiff(h, q));
2016-09-15 19:17:07 +02:00
diff.forEach(entry => lib.bot.mode(e.channel, entry + (' ' + key).repeat(entry.length - 1), e.network));
2016-09-14 20:07:10 +02:00
}
});
});
});
},
desc: 'sync'
});
};