Core JavaScript improvements

Almost the entire core.js file has been rewritten to provide greater documentation.

app.channelIsJoined() has been deprecated in favor of app.channelIsActive().
app.channelIsActive() will return a value for a regular channel or private message, so it makes more sense to use "active" over "joined"
Why don't I add app.privateMessageIsActive() instead? Because app.channelIsActive() can kill two birds with one stone.

app.channelMemberCount() now throws a JavaScript exception when used outside a channel.
This commit is contained in:
Michael
2018-07-17 03:35:10 -04:00
parent 632af0b09c
commit c4e164ab71
6 changed files with 225 additions and 165 deletions
@@ -83,23 +83,25 @@ ConversationTracking.updateNicknameWithNewMessage = function(lineElement)
var elementType = lineElement.dataset.lineType;
/* We only want to target plain text messages */
if (elementType === "privmsg" ||
elementType === "action" ||
elementType === "notice")
if (elementType !== "privmsg" &&
elementType !== "action" &&
elementType !== "notice")
{
var senderElement = lineElement.querySelector(".sender");
return;
}
if (senderElement) {
/* Is this a tracked nickname? */
var nickname = senderElement.dataset.nickname;
var senderElement = lineElement.querySelector(".sender");
if (ConversationTracking.isNicknameTracked(nickname) === false) {
return;
}
if (senderElement) {
/* Is this a tracked nickname? */
var nickname = senderElement.dataset.nickname;
/* Toggle status on for new message */
ConversationTracking.toggleSelectionStatusForSenderElement(senderElement);
if (ConversationTracking.isNicknameTracked(nickname) === false) {
return;
}
/* Toggle status on for new message */
ConversationTracking.toggleSelectionStatusForSenderElement(senderElement);
}
};