UNPKG

lirc

Version:

An old IRC client for node

54 lines (47 loc) 1.46 kB
// Generated by CoffeeScript 1.12.7 (function() { var clone, defaultSession, lirc, merge, ref, session; lirc = require('./lirc'); ref = lirc.utils, merge = ref.merge, clone = ref.clone; session = lirc.session = require('../cfg/session'); defaultSession = clone(session); session.build = function(cfg) { var i, key, len, obj, ref1, ref2, user, val; if (!cfg) { return session; } merge(session, defaultSession); if (cfg.server) { merge(session.server, cfg.server); session.servers.push(session.server); } else if (cfg.servers) { ref1 = cfg.servers; for (i = 0, len = ref1.length; i < len; i++) { obj = ref1[i]; session.servers.push(merge(clone(defaultSession.server), obj)); } session.server = session.servers[0]; } user = cfg.user || {}; ref2 = session.server.user; for (key in ref2) { val = ref2[key]; if (val) { user[key] = val; } } if (!user.username) { user.username = user.nick.replace(/[\#\?]/g, ''); } user.realname = user.realname || user.username; user.nick = lirc.format.nick(user.nick); user.altnick = lirc.format.nick(user.altnick || user.nick + '?'); session.server.user = user; session.me = cfg.me || user.username; if (cfg.localAddress) { session.server.localAddress = cfg.localAddress; } session.built = true; return session; }; }).call(this);