this.list_buffer = [];
this.motd_buffer = '';
-
+
this.irc_events = {
connect: onConnect,
options: onOptions,
nickname_in_use: onNicknameInUse
};
EventBinder.bindIrcEvents('server *', this.irc_events, this, this.irc_connection);
-
};
this.irc_connection.clientEvent('connect', {
nick: event.nick
});
-};
+}
function onOptions(event) {
this.irc_connection.clientEvent('options', {
options: event.options,
cap: event.cap
});
-};
+}
function onListStart(event) {
this.irc_connection.clientEvent('list_start', {});
this.list_buffer = [];
this.busy_listing = true;
-};
+}
function onListChannel(event) {
var buf;
num_users: event.num_users,
topic: event.topic
});
-
+
if (this.list_buffer.length > 200) {
buf = _.sortBy(this.list_buffer, function (channel) {
// sortBy sorts in ascending order, we want to sort by descending, hence using 0 - num_users.
});
this.list_buffer = [];
}
-};
+}
function onListEnd(event) {
var buf;
-
+
buf = _.sortBy(this.list_buffer, function (channel) {
// sortBy sorts in ascending order, we want to sort by descending, hence using 0 - num_users.
return 0 - channel.num_users;
});
this.list_buffer = [];
this.busy_listing = false;
-
+
this.irc_connection.clientEvent('list_end', {});
-};
+}
function onMotdStart(event) {
this.motd_buffer = '';
-};
+}
function onMotd(event) {
this.motd_buffer += event.motd;
-};
+}
function onMotdEnd(event) {
this.irc_connection.clientEvent('motd', {
msg: this.motd_buffer
});
-};
+}
function onError(event) {
this.irc_connection.clientEvent('irc_error', {
error: 'error',
reason: event.reason
});
-};
+}
function onPasswordMismatch(event) {
this.irc_connection.clientEvent('irc_error', {
from: event.from,
to: event.to
});
-};
+}
function onNoSuchNick(event) {
this.irc_connection.clientEvent('irc_error', {
nick: event.nick,
reason: event.reason
});
-};
+}
function onCannotSendToChan(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onTooManyChannels(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onUserNotInChannel(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onNotOnChannel(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onChannelIsFull(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onInviteOnlyChannel(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onBannedFromChannel(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onBadChannelKey(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onChanopPrivsNeeded(event) {
this.irc_connection.clientEvent('irc_error', {
channel: event.channel,
reason: event.reason
});
-};
+}
function onNicknameInUse(event) {
this.irc_connection.clientEvent('irc_error', {
nick: event.nick,
reason: event.reason
});
-};
+}