Chat: Title; Minimization and new messages and connectivity notification.
This commit is contained in:
@@ -3,6 +3,35 @@
|
||||
cfg.hidIDMessage = GetElement(cfg.hidIDMessage);
|
||||
cfg.hidUserName = GetElement(cfg.hidUserName);
|
||||
cfg.hidLastUser = GetElement(cfg.hidLastUser);
|
||||
cfg.divChatContainer = GetElement(cfg.divChatContainer);
|
||||
cfg.lblTitle = GetElement(cfg.lblTitle);
|
||||
cfg.txtText = GetElement(cfg.txtText);
|
||||
cfg.btnSend = GetElement(cfg.btnSend);
|
||||
|
||||
cfg.lblTitle.innerHTML = cfg.Texts.Chat;
|
||||
cfg.lblTitle.className = "titleChatNormal";
|
||||
cfg.divChatContainer.style.display = "none";
|
||||
cfg.Minimized = true;
|
||||
cfg.Connected = null;
|
||||
cfg.FirstMessages = true;
|
||||
|
||||
cfg.lblTitle.onclick = function () {
|
||||
if (cfg.Minimized) {
|
||||
cfg.divChatContainer.style.display = "";
|
||||
if (cfg.Connected) {
|
||||
cfg.lblTitle.innerHTML = cfg.Texts.Close;
|
||||
cfg.lblTitle.className = "titleChatNormal";
|
||||
}
|
||||
cfg.Minimized = false;
|
||||
} else {
|
||||
cfg.divChatContainer.style.display = "none";
|
||||
if (cfg.Connected) {
|
||||
cfg.lblTitle.innerHTML = cfg.Texts.Chat;
|
||||
cfg.lblTitle.className = "titleChatNormal";
|
||||
}
|
||||
cfg.Minimized = true;
|
||||
}
|
||||
};
|
||||
|
||||
var CreateMessageDOM = function (message, selfMessage, showUserName) {
|
||||
var divMessageRow = document.createElement("DIV");
|
||||
@@ -36,9 +65,25 @@
|
||||
};
|
||||
|
||||
var RequestChatData = function () {
|
||||
var requestUrl = cfg.ServiceUrl + "?idBoard=" + cfg.IDBoard + "&idMessage=" + cfg.hidIDMessage.value;
|
||||
var requestUrl = cfg.ServiceUrl +
|
||||
"?idBoard=" + cfg.IDBoard +
|
||||
"&idMessage=" + cfg.hidIDMessage.value +
|
||||
"&PoolData=" + ((cfg.FirstMessages) ? "0" : "1");
|
||||
var ReciveChatData = function (responseText) {
|
||||
|
||||
// Mark as connected
|
||||
if (cfg.Connected == false) {
|
||||
if (cfg.Minimized) {
|
||||
cfg.lblTitle.innerHTML = cfg.Texts.Chat;
|
||||
} else {
|
||||
cfg.lblTitle.innerHTML = cfg.Texts.Close;
|
||||
}
|
||||
cfg.lblTitle.className = "titleChatNormal";
|
||||
cfg.txtText.disabled = false;
|
||||
cfg.btnSend.disabled = false;
|
||||
}
|
||||
cfg.Connected = true;
|
||||
|
||||
recvMsgs = JSON.parse(responseText);
|
||||
if (recvMsgs) {
|
||||
var idMessage = parseInt(cfg.hidIDMessage.value);
|
||||
@@ -57,8 +102,14 @@
|
||||
}
|
||||
cfg.divChat.appendChild(frag);
|
||||
cfg.divChat.scrollTop = cfg.divChat.scrollHeight;
|
||||
if (cfg.Minimized && cfg.FirstMessages == false) {
|
||||
cfg.lblTitle.innerHTML = cfg.Texts.NewMessages;
|
||||
cfg.lblTitle.className = "titleChatAlert";
|
||||
}
|
||||
}
|
||||
|
||||
cfg.FirstMessages = false;
|
||||
|
||||
// Reset pool
|
||||
window.setTimeout(function () {
|
||||
RequestChatData();
|
||||
@@ -66,6 +117,15 @@
|
||||
};
|
||||
var ErrorChatData = function () {
|
||||
|
||||
// Mark as disconnected
|
||||
cfg.lblTitle.innerHTML = cfg.Texts.Disconnected;
|
||||
cfg.lblTitle.className = "titleChatDisconnected";
|
||||
cfg.txtText.disabled = true;
|
||||
cfg.btnSend.disabled = true;
|
||||
cfg.Connected = false;
|
||||
|
||||
cfg.FirstMessages = false;
|
||||
|
||||
// Retry
|
||||
window.setTimeout(function () {
|
||||
RequestChatData();
|
||||
|
||||
Reference in New Issue
Block a user