fix unread_msg variable in chat

This commit is contained in:
2014-09-16 20:42:52 +02:00
parent 4bd94abf96
commit 18ce551602
3 changed files with 28 additions and 16 deletions

View File

@@ -7,8 +7,8 @@
class Databap extends PhpObject class Databap extends PhpObject
{ {
//Common Constants //Common Constants
const VERSION = '1.0.0'; //Versioning: <Main_Version>.<Enhancement_Package>.<Patch>-<Release_Candidate> const VERSION = '1.0.1'; //Versioning: <Main_Version>.<Enhancement_Package>.<Patch>-<Release_Candidate>
const VERSION_DATE = '13/09/2014'; const VERSION_DATE = '16/09/2014';
const EXPECTED_PAGE_COOKIE = 'exp_page'; const EXPECTED_PAGE_COOKIE = 'exp_page';
const MAIN_SEPARATOR = ' '; const MAIN_SEPARATOR = ' ';
const DATE_FORMAT = 'd/m/Y'; const DATE_FORMAT = 'd/m/Y';

View File

@@ -79,7 +79,7 @@ databap.pageInit = function()
//Page variables //Page variables
self.tmp('sending_msg', 'boolean'); self.tmp('sending_msg', 'boolean');
self.tmp('refresh', 'boolean'); self.tmp('refresh', 'boolean');
self.vars2('unread_msg', 'object'); self.tmp('unread_msg', 'object');
self.tmp('news_period', 10*60*1000); self.tmp('news_period', 10*60*1000);
self.tmp('get_news', false); self.tmp('get_news', false);
self.tmp('last_message_id', '0'); self.tmp('last_message_id', '0');
@@ -104,7 +104,7 @@ databap.pageInit = function()
//Loading Chans //Loading Chans
setChanButton(); setChanButton();
databap.vars.chans_list[databap.consts.all_chan_id] = databap.consts.all_chan_text; databap.vars.chans_list[databap.consts.all_chan_id] = databap.consts.all_chan_text;
databap.vars.unread_msg[databap.consts.all_chan_text] = 0; databap.tmp(['unread_msg', databap.consts.all_chan_text], 0);
joinChan(databap.consts.default_chan, true); joinChan(databap.consts.default_chan, true);
//window focus //window focus
@@ -226,9 +226,6 @@ function getNews()
function onPageFocus() function onPageFocus()
{ {
databap.vars.focus=true; databap.vars.focus=true;
//iUnreadMessages -= databap.vars.unread_msg[currentChan()];
//databap.setTitle();
//debug('focused '+databap.vars.focus);
switchChan(); switchChan();
} }
function onPageBlur() function onPageBlur()
@@ -377,8 +374,8 @@ function switchChan(sChanKeyName)
//Unread msg //Unread msg
if(databap.vars.focus) if(databap.vars.focus)
{ {
databap.vars.unread_msg[sChanName] = 0; databap.tmp(['unread_msg', sChanName], 0);
databap.vars.unread_msg[databap.consts.all_chan_text] = 0; databap.tmp(['unread_msg', databap.consts.all_chan_text], 0);
} }
syncUnreadMsg(); syncUnreadMsg();
@@ -402,7 +399,7 @@ function syncUnreadMsg()
var iCountUnread = 0; var iCountUnread = 0;
$.each $.each
( (
databap.vars.unread_msg, databap.tmp('unread_msg'),
function(sChanName, iUnreadMsg) function(sChanName, iUnreadMsg)
{ {
iCountUnread += iUnreadMsg; iCountUnread += iUnreadMsg;
@@ -420,7 +417,7 @@ function syncUnreadMsg()
function(sChanKeyName, sChanName) function(sChanKeyName, sChanName)
{ {
sChanUnreadId = databap.consts.chanUnreadPrefix+sChanKeyName; sChanUnreadId = databap.consts.chanUnreadPrefix+sChanKeyName;
iCountUnread = databap.vars.unread_msg[sChanName]; iCountUnread = databap.tmp(['unread_msg', sChanName]);
sUnreadText = (iCountUnread > 0 && sChanName != currentChan())?'('+iCountUnread+')':''; sUnreadText = (iCountUnread > 0 && sChanName != currentChan())?'('+iCountUnread+')':'';
databap.getMainElem('#'+sChanUnreadId).text(sUnreadText); databap.getMainElem('#'+sChanUnreadId).text(sUnreadText);
} }
@@ -432,7 +429,7 @@ function addChanTab(sChanKeyName, sChanName, sChanTabName, bLightUp)
//Add channel to list //Add channel to list
sChanTabName = sChanTabName || sChanName; sChanTabName = sChanTabName || sChanName;
databap.vars.chans_list[sChanKeyName] = sChanName; databap.vars.chans_list[sChanKeyName] = sChanName;
databap.vars.unread_msg[sChanName] = 0; databap.tmp(['unread_msg', sChanName], 0);
//Add channel tab //Add channel tab
var sChanId = databap.consts.chanPrefix+sChanKeyName; var sChanId = databap.consts.chanPrefix+sChanKeyName;
@@ -659,7 +656,8 @@ function refresh_chat(bReset)
'messages', 'messages',
function(result) function(result)
{ {
var prevLastMsgId = self.tmp('last_message_id');; var prevLastMsgId = self.tmp('last_message_id');
var sUnreadChanName, iUnreadCount;
updateUsersList = false; updateUsersList = false;
if(prevLastMsgId < result.last_message_id || bReset) if(prevLastMsgId < result.last_message_id || bReset)
{ {
@@ -675,7 +673,9 @@ function refresh_chat(bReset)
addMessage(message_info, bReset); addMessage(message_info, bReset);
if(!bReset && message_info.msg_class!='C' /* && message_info.id_user!=databap.vars.user_id */) if(!bReset && message_info.msg_class!='C' /* && message_info.id_user!=databap.vars.user_id */)
{ {
databap.vars.unread_msg[getChanName(message_info.id_chan)]++; sUnreadChanName = getChanName(message_info.id_chan);
iUnreadCount = databap.tmp(['unread_msg', sUnreadChanName]) || 0;
databap.tmp(['unread_msg', sUnreadChanName], iUnreadCount++);
} }
} }
); );

View File

@@ -6,6 +6,7 @@
SAP Orange: #EFAB00 SAP Orange: #EFAB00
SAP Bright blue: #D9E5F2 SAP Bright blue: #D9E5F2
Bright blue 2: #DCF2FB Bright blue 2: #DCF2FB
Bright Orange: #F2E1B5
*/ */
/* General */ /* General */
@@ -1436,7 +1437,7 @@ vertical-align 0% -5% -10% -15% -20% -25% -30%
padding:2px 5px; padding:2px 5px;
font-weight:bold; font-weight:bold;
border:1px solid #04357B; border:1px solid #04357B;
cursor:pointer;
background: #FFFFFF; background: #FFFFFF;
background: -moz-linear-gradient(top, #FFFFFF 15%, #D9E5F2 85%); background: -moz-linear-gradient(top, #FFFFFF 15%, #D9E5F2 85%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(15%,#FFFFFF), color-stop(85%,#D9E5F2)); background: -webkit-gradient(linear, left top, left bottom, color-stop(15%,#FFFFFF), color-stop(85%,#D9E5F2));
@@ -1446,6 +1447,17 @@ vertical-align 0% -5% -10% -15% -20% -25% -30%
background: linear-gradient(to bottom, #FFFFFF 15%,#D9E5F2 85%); background: linear-gradient(to bottom, #FFFFFF 15%,#D9E5F2 85%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#D9E5F2',GradientType=0 ); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#D9E5F2',GradientType=0 );
} }
#welcome span.milestone:hover {
color:#EFAB00;
border-color:#EFAB00;
background: -moz-linear-gradient(top, #FFFFFF 15%, #F2E1B5 85%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(15%,#FFFFFF), color-stop(85%,#F2E1B5));
background: -webkit-linear-gradient(top, #FFFFFF 15%,#F2E1B5 85%);
background: -o-linear-gradient(top, #FFFFFF 15%,#F2E1B5 85%);
background: -ms-linear-gradient(top, #FFFFFF 15%,#F2E1B5 85%);
background: linear-gradient(to bottom, #FFFFFF 15%,#F2E1B5 85%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#F2E1B5',GradientType=0 );
}
#welcome span.milestone .fa { #welcome span.milestone .fa {
margin-right:5px; margin-right:5px;
} }