module.exports = (lib) => { lib.trigger.add({ name: 'sync', call: /^!sync$/i, level: 100, active: 0, func: (e) => { lib.bot.names(e.channel, e.network, names => { Object.keys(names).forEach(key => { if(key === lib.bot.me.nick) { return; } lib.bot.whois(key, e.network, (err, data) => { if(data.channels[e.channel]) { var h = lib.modesToString(data.channels[e.channel]), q = ""; if(lib.admins[data.account]) q = lib.levelToModes(lib.admins[data.account].level); var diff = lib.groupUserModes(lib.userModeDiff(h, q)); diff.forEach(entry => lib.bot.mode(e.channel, entry + (' ' + key).repeat(entry.length - 1), e.network)); } }); }); }); }, desc: 'sync' }); };