v1.0.0 RC 1
This commit is contained in:
337
masks/chat.html
337
masks/chat.html
@@ -1,44 +1,45 @@
|
||||
<div id="chat">
|
||||
<div class="h1_wrap" id="chat_title">
|
||||
<h1 class="round"><span>Chat</span></h1>
|
||||
</div>
|
||||
|
||||
<div id="chat_chan">
|
||||
<p class="tab_bar"><span id="join_chan" class="round_top clickable"></span></p>
|
||||
<p class="tab_bar"><span id="join_chan" class="chan round_top clickable"></span></p>
|
||||
</div>
|
||||
<div id="sidebar">
|
||||
<div class="sidebar_box round">
|
||||
<div id="connected_users_title" class="sidebar_box_title round_top clickable">Connectés</div>
|
||||
<div id="connected_users" class="sidebar_box_content"></div>
|
||||
<div class="sidebar_box_title round_top round clickable">Connectés</div>
|
||||
<div id="connected_users" class="sidebar_box_content hide"></div>
|
||||
</div>
|
||||
<div class="sidebar_box round">
|
||||
<div class="sidebar_box_title round_top clickable round">Aide</div>
|
||||
<div class="sidebar_box_title round_top round clickable">News</div>
|
||||
<div id="news" class="sidebar_box_content hide"><p class="loading"><i class="fa fa-spin fa-inline fa-c-loading"></i></p></div>
|
||||
</div>
|
||||
<div class="sidebar_box round">
|
||||
<div class="sidebar_box_title round_top round clickable">Aide</div>
|
||||
<div id="help_open" class="sidebar_box_content help_paperclip clickable hide"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="chat_room" class="round">
|
||||
<div id="chat_container">
|
||||
<div class="scrollbar"><div class="track round"><div class="thumb round clickable"><div class="end round clickable"></div></div></div></div>
|
||||
<div id="chat_messages_box">
|
||||
<div id="chat_messages"></div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="chat_input" class="tiny_round">
|
||||
<form id="chat_form" name="chat_form">
|
||||
<input type="text" id="message" name="message" value="" maxlength="500" />
|
||||
<i id="message_img" class="fa fa-fw fa-20 fa-c-comment"></i><input type="text" id="message" name="message" value="" maxlength="500" />
|
||||
<input type="hidden" id="chan" name="chan" value="" maxlength="50" />
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div id="template" class="hide">
|
||||
<div id="help" class="help tiny_round">
|
||||
<p class="title">Manuel d'utilisation<span id="close_help" class="clickable">x</span></p>
|
||||
<p class="title">Manuel d'utilisation</p>
|
||||
<p class="title righty"> <span id="close_help" class="clickable"><i class="fa fa-30 fa-c-close"></i></span></p>
|
||||
<p class="subtitle"><span>Message</span></p>
|
||||
<p class="item"><span class="key">Echap</span>Supprime le texte en cours de rédaction</p>
|
||||
<p class="item"><span class="key">Flèche haut</span>Répète dernier message envoyé</p>
|
||||
<p class="item"><span class="key">@X Y</span>Vous dites Y à X (pseudo de Y en rouge)</p>
|
||||
<p class="item"><span class="key">/me X</span>Votre_pseudo X. Utile lorsque vous voulez parler de vous à la 3ème personne. Par exemple : /me se touche la nouille au taff</p>
|
||||
<p class="item"><span class="key">/mail X Y</span>Vous envoyez à X un email contenant Y (adresse professionel)</p>
|
||||
<p class="item"><span class="key">/mail X Y</span>Vous envoyez à X un email contenant Y (adresse professionnelle)</p>
|
||||
<p class="item"><span class="key">/news X</span>Vous annoncez le message X (votre message est ajouté à la liste des news automatiquement)</p>
|
||||
<p class="item">
|
||||
<span class="key">Tab</span>
|
||||
Chaque hit pré-remplie le message en faisant défiler la liste des connectés.
|
||||
@@ -48,6 +49,7 @@
|
||||
<p class="subtitle"><span>Chans</span></p>
|
||||
<p class="item">Les chans sont divisés en trois catégories : les chans privés (PM, pour deux personnes seulement), les chans entreprise (pour toutes les personnes d'une même entreprise) et les autres (chans publiques)</p>
|
||||
<p class="item"><span class="key">/join #X</span>Vous rejoignez le chan X (si autorisé)</p>
|
||||
<p class="item"><span class="key">/invite X</span>Vous invitez X à rejoindre le chan (si autorisé)</p>
|
||||
<p class="item"><span class="key">/pm #X</span>Vous rejoignez le chan privé (vous et X)</p>
|
||||
<p class="item"><span class="key">/quit #X</span>Vous quittez le chan X</p>
|
||||
<p class="item"><span class="key">/chans</span>Liste des chans publiques disponibles (aussi accessible via /channels et /list)</p>
|
||||
@@ -77,7 +79,8 @@ databap.pageInit = function()
|
||||
//Page variables
|
||||
databap.tmp('sending_msg', 'boolean');
|
||||
databap.tmp('refresh', 'boolean');
|
||||
databap.initVar('unread_msg', 'object');
|
||||
self.vars2('unread_msg', 'object');
|
||||
databap.tmp('news_period', 10*60*1000);
|
||||
|
||||
//Main elements
|
||||
$MsgInput = databap.getMainElem('#message');
|
||||
@@ -90,7 +93,7 @@ databap.pageInit = function()
|
||||
|
||||
//Loading the chat
|
||||
databap.vars.last_message_id = '0';
|
||||
oScrollbar = $('#chat_container').tinyscrollbar({viewport:'#chat_messages_box', overview:'#chat_messages'});
|
||||
self.initScrollBar('#chat_container', '#chat_messages_box', '#chat_messages');
|
||||
|
||||
//Loading Chans
|
||||
setChanButton();
|
||||
@@ -99,67 +102,117 @@ databap.pageInit = function()
|
||||
joinChan(databap.consts.default_chan, true);
|
||||
|
||||
//window focus
|
||||
//databap.onMouveEnter = function(){if(databap.vars.inputFocus){onPageFocus();}else{$MsgInput.focus();}};
|
||||
//databap.onMouveLeave = function(){$MsgInput.focus();onPageBlur();};
|
||||
$(window).focus(onPageFocus);
|
||||
$(window).blur(onPageBlur);
|
||||
//$(window).focus(function(){debug('focus');}).blur(function(){debug('blur');});
|
||||
|
||||
//Message Input Focus
|
||||
//$MsgInput.focus(function(){onPageFocus();databap.vars.inputFocus=true;});
|
||||
//$MsgInput.blur(function(){onPageBlur();databap.vars.inputFocus=false;});
|
||||
$MsgInput.focus();
|
||||
//databap.onKeyDown = function(e){if(!databap.vars.inputFocus)$MsgInput.focus();};
|
||||
|
||||
//On resize
|
||||
//databap.resetSize = function(){databap.getMainElem('#chat_messages_box').height(databap.getMainElem('#sidebar').outerHeight());};
|
||||
databap.onResize = function()
|
||||
{
|
||||
databap.$main.css('overflow', 'hidden');
|
||||
|
||||
//debug('chat page resize triggered');
|
||||
var $cb = databap.getMainElem('#chat_messages_box');
|
||||
var iMaxHeight = databap.consts.pageMaxHeight - 15 - ($('#chat_title').outerHeight(true) + $('#chat_chan').outerHeight(true) + $('#chat_room').outerHeight(true) - $('#chat_messages_box').outerHeight(true));
|
||||
if($cb.height() != iMaxHeight)
|
||||
{
|
||||
//$cb.animate({height: maxHeight}, 400, function(){oScrollbar.tinyscrollbar_update('bottom');resizing=false;});
|
||||
$cb.height(iMaxHeight);
|
||||
oScrollbar.tinyscrollbar_update('bottom');
|
||||
}
|
||||
};
|
||||
|
||||
//Disconnect from the chat
|
||||
databap.onQuit = function()
|
||||
{
|
||||
if(databap.tmp('refresh') == false) databap.getSyncInfo('disconnect_chat');
|
||||
databap.vars.chans_list = {};
|
||||
if(typeof oChatTimer != "undefined") clearTimeout(oChatTimer);
|
||||
if(typeof oUserTimer != "undefined") clearTimeout(oUserTimer);
|
||||
};
|
||||
|
||||
databap.onKeyDown = function(e)
|
||||
{
|
||||
if(e.keyCode == 116) databap.tmp('refresh', true);
|
||||
else databap.tmp('refresh', false);
|
||||
};
|
||||
|
||||
//Sidebar
|
||||
databap.getMainElem('.sidebar_box_title').click
|
||||
(
|
||||
function()
|
||||
{
|
||||
$(this).toggleClass('round')
|
||||
.closest('.sidebar_box').find('.sidebar_box_content').toggle('fast', function(){databap.resizeMain('true');});
|
||||
}
|
||||
);
|
||||
|
||||
//Help
|
||||
databap.getMainElem('#help_open').click(displayHelp);
|
||||
//Init sidebar events
|
||||
initSideBar();
|
||||
|
||||
//Init's end
|
||||
databap.setInitEnd(true);
|
||||
};
|
||||
|
||||
//On resize
|
||||
databap.onResize = function()
|
||||
{
|
||||
self.setScrollBarSize('maximize');
|
||||
|
||||
//Message Input
|
||||
$('#message').width($('#chat_input').width() - $('#message_img').outerWidth(true)- 1);
|
||||
};
|
||||
|
||||
//Disconnect from the chat
|
||||
databap.onQuit = function()
|
||||
{
|
||||
if(databap.tmp('refresh') == false) databap.getSyncInfo('disconnect_chat');
|
||||
databap.vars.chans_list = {};
|
||||
if(typeof oChatTimer != "undefined") clearTimeout(oChatTimer);
|
||||
if(typeof oUserTimer != "undefined") clearTimeout(oUserTimer);
|
||||
return true;
|
||||
};
|
||||
|
||||
databap.onKeyDown = function(e)
|
||||
{
|
||||
if(e.keyCode == 116) databap.tmp('refresh', true);
|
||||
else databap.tmp('refresh', false);
|
||||
};
|
||||
|
||||
function initSideBar()
|
||||
{
|
||||
//Sidebar Events
|
||||
$('#sidebar').find('.sidebar_box_title').click
|
||||
(
|
||||
function()
|
||||
{
|
||||
$This = $(this);
|
||||
if(!$This.closest('.sidebar_box').find('.sidebar_box_content').is(":visible"))
|
||||
{
|
||||
$('#sidebar').find('.sidebar_box_title').not($This)
|
||||
.addClass('round')
|
||||
.closest('.sidebar_box').find('.sidebar_box_content')
|
||||
.hide('fast');
|
||||
|
||||
$This
|
||||
.toggleClass('round')
|
||||
.closest('.sidebar_box').find('.sidebar_box_content')
|
||||
.toggle('fast', function()
|
||||
{
|
||||
databap.resizeMain('true');
|
||||
switch($(this).attr('id'))
|
||||
{
|
||||
case 'help_open': $('#help_open').click(); break;
|
||||
case 'news': getNews(); break;
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
);
|
||||
$('#sidebar').find('.sidebar_box_title').eq(0).click();
|
||||
|
||||
//Help
|
||||
databap.getMainElem('#help_open').click(displayHelp);
|
||||
}
|
||||
|
||||
function getNews()
|
||||
{
|
||||
if(typeof databap.tmp('news_timer') != "undefined") clearTimeout(databap.tmp('news_timer'));
|
||||
var $NewsBox = $('#news');
|
||||
if($NewsBox.is(':visible'))
|
||||
{
|
||||
databap.getInfo
|
||||
(
|
||||
'news',
|
||||
function(asNews)
|
||||
{
|
||||
$.each(asNews.news, function(ikey, asNew)
|
||||
{
|
||||
$('<div>', {'class':'new'}).hide()
|
||||
.append($('<p>')
|
||||
.append($('<i>', {'class':'fa fa-inline fa-30 fa-c-news'}))
|
||||
.append($('<span>').text(asNew.message)))
|
||||
.append($('<p>', {'class':'signature'})
|
||||
.text('—'+asNew.nickname)
|
||||
.append('<br />')
|
||||
.append($('<span>', {'class':'news_time'}).text(asNew.time_desc)))
|
||||
.appendTo($NewsBox);
|
||||
});
|
||||
|
||||
$NewsBox.find('.loading').hide();
|
||||
$NewsBox.find('.new').toggle();
|
||||
$NewsBox.find('.new:hidden').remove();
|
||||
|
||||
//Request in 10mins
|
||||
databap.tmp('news_timer', setTimeout(getNews, databap.tmp('news_period')));
|
||||
},
|
||||
{},
|
||||
'json'
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
function onPageFocus()
|
||||
{
|
||||
databap.vars.focus=true;
|
||||
@@ -176,31 +229,47 @@ function onPageBlur()
|
||||
|
||||
function setChanButton()
|
||||
{
|
||||
var sAddChanText = '+';
|
||||
$JoinButton = $('#join_chan');
|
||||
if($JoinButton.text() == sAddChanText)
|
||||
{
|
||||
$JoinButton
|
||||
.addClass('active')
|
||||
.empty()
|
||||
.append($('<span>#<input type="text" id="input_chan" class="round" /></span>'))
|
||||
.find('#input_chan').focus().keyup
|
||||
(
|
||||
function(e)
|
||||
$('#join_chan')
|
||||
//.click(function(){$('#join_chan_button').click();})
|
||||
.append
|
||||
(
|
||||
$('<span>', {id:'join_chan_button'})
|
||||
.click(function()
|
||||
{
|
||||
if(e.keyCode == 13)
|
||||
{
|
||||
setChanButton();
|
||||
joinChan($(this).val());
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
else $JoinButton
|
||||
.empty()
|
||||
.text(sAddChanText)
|
||||
.removeClass('active')
|
||||
.click(function(){setChanButton();});
|
||||
$(this).hide();
|
||||
$('#join_chan_input').css('display', '');
|
||||
$('#join_chan').addClass('active').find('#input_chan').focus();
|
||||
})
|
||||
.append(' ')
|
||||
.append($('<i>', {'class':'fa fa-c-plus'}))
|
||||
.append(' ')
|
||||
)
|
||||
.append
|
||||
(
|
||||
$('<span>', {id:'join_chan_input'})
|
||||
.text('#')
|
||||
.append
|
||||
(
|
||||
$('<input>', {type:'text', id:'input_chan', 'class':'round'})
|
||||
.keyup(function(e)
|
||||
{
|
||||
if(e.keyCode == 13)
|
||||
{
|
||||
var $This = $(this);
|
||||
joinChan($This.val());
|
||||
$This.val('');
|
||||
|
||||
}
|
||||
if(typeof e.keyCode == 'undefined' || e.keyCode == 13)
|
||||
{
|
||||
$('#join_chan_input').css('display', 'none');
|
||||
$('#join_chan_button').show();
|
||||
$('#join_chan').removeClass('active');
|
||||
}
|
||||
})
|
||||
.blur(function(){$(this).keyup();})
|
||||
).hide()
|
||||
);
|
||||
}
|
||||
|
||||
function getChanKeyName(sChanName)
|
||||
@@ -306,7 +375,7 @@ function switchChan(sChanKeyName)
|
||||
//Show current channel messages
|
||||
databap.getMainElem('#chat_messages').find('p').hide();
|
||||
databap.getMainElem('#chat_messages').find('p.class_'+sChanKeyName+', p.class_'+databap.consts.all_chan_id).show();
|
||||
oScrollbar.tinyscrollbar_update('bottom');
|
||||
databap.updateScrollBar('bottom');
|
||||
|
||||
//Show Current channel members
|
||||
databap.getMainElem('#connected_users').find('p').hide();
|
||||
@@ -358,11 +427,11 @@ function addChanTab(sChanKeyName, sChanName, sChanTabName, bLightUp)
|
||||
//Prepare clickable chan button
|
||||
var sChanQuitId = databap.consts.chanQuitPrefix+sChanKeyName;
|
||||
var sChanUnreadId = databap.consts.chanUnreadPrefix+sChanKeyName;
|
||||
var $ChanButton = $('<span id="'+sChanId+'" class="chan clickable round_top'+(bLightUp?' light_up':'')+'">#</span>')
|
||||
var $ChanButton = $('<span id="'+sChanId+'" class="chan clickable inc_border round_top'+(bLightUp?' light_up':'')+'">#</span>')
|
||||
.click(function(){$(this).removeClass('light_up');joinChan(databap.vars.chans_list[$(this).attr('id').substr(databap.consts.chanPrefix.length)]);})
|
||||
.append('<span class="chan_title">'+sChanTabName+'</span>')
|
||||
.append('<span class="chan_unread" id="'+sChanUnreadId+'"></span>')
|
||||
.append($('<a id="'+sChanQuitId+'" class="quit_chan clickable">x</a>').click(function(e){e.stopPropagation();quitChan($(this).attr('id').substr(databap.consts.chanQuitPrefix.length));}));
|
||||
.append($('<a id="'+sChanQuitId+'" class="quit_chan clickable"><i class="fa fa-c-close"></i></a>').click(function(e){e.stopPropagation();quitChan($(this).attr('id').substr(databap.consts.chanQuitPrefix.length));}));
|
||||
|
||||
|
||||
//Add channel tab name and bind delete button
|
||||
@@ -418,7 +487,6 @@ function add_message(e)
|
||||
else if(chat_message != '' && databap.tmp('sending_msg') == false) //send
|
||||
{
|
||||
databap.tmp('sending_msg', true);
|
||||
//debug(databap.tmp('sending_msg'));
|
||||
databap.saveForm
|
||||
(
|
||||
'add_message',
|
||||
@@ -426,7 +494,6 @@ function add_message(e)
|
||||
function(id)
|
||||
{
|
||||
databap.tmp('sending_msg', false);
|
||||
//debug(databap.tmp('sending_msg'));
|
||||
refresh_chat();
|
||||
},
|
||||
true
|
||||
@@ -455,6 +522,11 @@ function add_message(e)
|
||||
}
|
||||
break;
|
||||
case 9 : //tab
|
||||
/* Action Plan
|
||||
- Detect current caret position : $this.getCursorPosition()
|
||||
- Find word wrapped around cursor : while loop until non alphanum char before and after caret position
|
||||
-
|
||||
*/
|
||||
//Init
|
||||
$this = databap.getMainElem('#message');
|
||||
var chat_message = $.trim($this.val());
|
||||
@@ -465,6 +537,7 @@ function add_message(e)
|
||||
|
||||
//Finding last word
|
||||
var last_word = (chat_message.lastIndexOf(" ")==-1)?chat_message:chat_message.substr(chat_message.lastIndexOf(" ") + 1);
|
||||
debug(last_word);
|
||||
if(last_word.substr(0, 1)=='@') last_word = last_word.substr(1);
|
||||
|
||||
var last_word_len = last_word.length;
|
||||
@@ -540,7 +613,7 @@ function refresh_chat(bReset)
|
||||
{
|
||||
var bReset = (typeof bReset != 'undefined' && bReset == true);
|
||||
if(typeof oChatTimer != "undefined") clearTimeout(oChatTimer);
|
||||
if(databap.vars.current_page == databap.pages.chat)
|
||||
if(databap.vars.current_page == 'chat')
|
||||
{
|
||||
if(!databap.vars.loading)
|
||||
{
|
||||
@@ -579,7 +652,7 @@ function refresh_chat(bReset)
|
||||
//Nicknames changes
|
||||
if(updateUsersList === true || prevLastMsgId == 0)
|
||||
{
|
||||
oScrollbar.tinyscrollbar_update('bottom');
|
||||
databap.updateScrollBar('bottom');
|
||||
refresh_users();
|
||||
updateUsersList = false;
|
||||
}
|
||||
@@ -605,27 +678,35 @@ function refresh_chat(bReset)
|
||||
|
||||
function addMessage(message_info, bReset)
|
||||
{
|
||||
message_info.nickname = message_info.nickname || '';
|
||||
|
||||
var sChanKeyName = message_info.id_chan;
|
||||
var sMsgPrefix = '<a class="user clickable" title="Ecrire un PM à '+message_info.nickname+'">'+message_info.nickname+'</a><span class="console">></span>';
|
||||
var msg_body = '';
|
||||
|
||||
switch(message_info.msg_class)
|
||||
{
|
||||
case 'U':
|
||||
msg_body = '<a class="user clickable" title="Ecrire un PM à '+message_info.nickname+'">'+message_info.nickname+'</a><span class="console">></span><span class="text">'+message_info.message+'</span>';
|
||||
msg_body = sMsgPrefix+'<span class="text">'+message_info.message+'</span>';
|
||||
break;
|
||||
case 'NW':
|
||||
if(!bReset) getNews();
|
||||
msg_body = '<span class="text action">'+message_info.nickname+' a une news : <span class="news"><i class="fa fa-30 fa-c-news"></i> '+message_info.message+' <i class="fa fa-30 fa-c-news"></i></span></span>';
|
||||
break;
|
||||
case 'A':
|
||||
var url = databap.getCodeLink(message_info.message);
|
||||
var url = databap.getInternalLink('code', message_info.message);
|
||||
msg_body = '<span class="text">'+message_info.nickname+' a ajouté un nouveau code : <a href="'+url+'" target="_blank">'+message_info.description+'</a></span>';
|
||||
break;
|
||||
case 'E':
|
||||
var url = databap.getCodeLink(message_info.message);
|
||||
var url = databap.getInternalLink('code', message_info.message);
|
||||
msg_body = '<span class="text">'+message_info.nickname+' a modifié le code <a href="'+url+'" target="_blank">'+message_info.description+'</a></span>';
|
||||
break;
|
||||
case 'PA':
|
||||
var url = databap.getProcLink(message_info.message);
|
||||
var url = databap.getInternalLink('proc', message_info.message);
|
||||
msg_body = '<span class="text">'+message_info.nickname+' a ajouté une nouvelle procédure : <a href="'+url+'" target="_blank">'+message_info.description+'</a></span>';
|
||||
break;
|
||||
case 'PE':
|
||||
var url = databap.getProcLink(message_info.message);
|
||||
var url = databap.getInternalLink('proc', message_info.message);
|
||||
msg_body = '<span class="text">'+message_info.nickname+' a modifié la procédure <a href="'+url+'" target="_blank">'+message_info.description+'</a></span>';
|
||||
break;
|
||||
case 'M':
|
||||
@@ -647,24 +728,25 @@ function addMessage(message_info, bReset)
|
||||
break;
|
||||
case 'I':
|
||||
var msg = '<a href="'+message_info.message[3]+'" target="_blank"><img src="'+message_info.message[0]+'" width="'+message_info.message[1]+'" height="'+message_info.message[2]+'" class="proxy"></a>';
|
||||
msg_body = '<a class="user clickable" title="Ecrire un PM à '+message_info.nickname+'">'+message_info.nickname+'</a><span class="console">></span><span class="text">'+msg+'</span>';
|
||||
msg_body = sMsgPrefix+'<span class="text">'+msg+'</span>';
|
||||
break;
|
||||
case '9':
|
||||
var msg = '<a href="'+message_info.message.url+'" target="_blank" title="'+message_info.message.title+'"><img src="'+message_info.message.url_img+'" width="'+message_info.message.width+'" height="'+message_info.message.height+'" class="proxy" /></a>';
|
||||
msg_body = '<a class="user clickable" title="Ecrire un PM à '+message_info.nickname+'">'+message_info.nickname+'</a><span class="console">></span><span class="text">'+msg+'</span>';
|
||||
msg_body = sMsgPrefix+'<span class="text">'+msg+'</span>';
|
||||
break;
|
||||
case 'R':
|
||||
if(!bReset)
|
||||
{
|
||||
msg_body = '<span class="text action">'+message_info.message+'</span>';
|
||||
setTimeout('databap.tmp(\'refresh\', true);databap.goTo(databap.vars.current_page);', databap.consts.reboot_delay*1000);
|
||||
setTimeout(databap.refresh, databap.consts.reboot_delay*1000);
|
||||
}
|
||||
break;
|
||||
case 'V':
|
||||
if(!bReset) joinChan(sChanKeyName, false, [], false);
|
||||
break;
|
||||
case 'B':
|
||||
msg_body = '<span class="text action">Nouvel article sur le blog BI de SAP : <a href="'+databap.getExternalLink('a', message_info.message)+'" target="_blank">'+message_info.art_title+'</a> ';
|
||||
var url = databap.getInternalLink('a', message_info.message);
|
||||
msg_body = '<span class="text action">Nouvel article sur le blog BI de SAP : <a href="'+url+'" target="_blank">'+message_info.art_title+'</a> ';
|
||||
msg_body+= 'par <a title="Lien vers la page de l\'auteur" href="'+message_info.link_auth+'" target="_blank">'+message_info.name+'</a> ('+message_info.art_date+')'+'</span>';
|
||||
break;
|
||||
case 'S':
|
||||
@@ -672,13 +754,21 @@ function addMessage(message_info, bReset)
|
||||
msg_body = '<span class="text action">'+message_info.nickname+' '+message_info.message+'</span>';
|
||||
break;
|
||||
case 'DA':
|
||||
var url = databap.getExternalLink('doc', message_info.message);
|
||||
var url = databap.getInternalLink('doc', message_info.message);
|
||||
msg_body = '<span class="text">'+message_info.nickname+' a ajouté une nouvelle documentation : <a href="'+url+'" target="_blank">'+message_info.description+'</a></span>';
|
||||
break;
|
||||
case 'DE':
|
||||
var url = databap.getExternalLink('doc', message_info.message);
|
||||
var url = databap.getInternalLink('doc', message_info.message);
|
||||
msg_body = '<span class="text">'+message_info.nickname+' a modifié la documentation <a href="'+url+'" target="_blank">'+message_info.description+'</a></span>';
|
||||
break;
|
||||
case 'TA':
|
||||
var url = databap.getInternalLink('table', message_info.message);
|
||||
msg_body = '<span class="text">'+message_info.nickname+' a ajouté une nouvelle table : <a href="'+url+'" target="_blank">'+message_info.description+'</a></span>';
|
||||
break;
|
||||
case 'TE':
|
||||
var url = databap.getInternalLink('table', message_info.message);
|
||||
msg_body = '<span class="text">'+message_info.nickname+' a modifié la table <a href="'+url+'" target="_blank">'+message_info.description+'</a></span>';
|
||||
break;
|
||||
}
|
||||
|
||||
if(msg_body != '')
|
||||
@@ -693,7 +783,7 @@ function addMessage(message_info, bReset)
|
||||
function refresh_users()
|
||||
{
|
||||
if(typeof oUserTimer != "undefined") clearTimeout(oUserTimer);
|
||||
if(databap.vars.current_page == databap.pages.chat)
|
||||
if(databap.vars.current_page == 'chat')
|
||||
{
|
||||
var delay = databap.consts.keep_alive / 10; //seconds
|
||||
databap.getInfo
|
||||
@@ -713,19 +803,20 @@ function refresh_users()
|
||||
$.each
|
||||
(
|
||||
chan_info,
|
||||
function(id_user, user_info)
|
||||
function(key, user_info)
|
||||
{
|
||||
var sNickName = user_info.nickname.replace('"', '\'');
|
||||
users_list.push(sNickName);
|
||||
var afk = (user_info.afk=='1')?'<img src="'+databap.consts.app_image_folder+'afk.png" class="afk" />':'';
|
||||
var profileLink = databap.getExternalLink('profil', user_info.id_user);
|
||||
var mission = 'Mission actuelle : '+user_info.status;
|
||||
var profileLink = databap.getInternalLink('profil', user_info.id_user);
|
||||
var mission = 'Mission actuelle : '+(user_info.status || 'Aucune');
|
||||
var pm = 'Cliquez pour lancer un channel privé avec '+user_info.name+' ('+user_info.company+')';
|
||||
var user = '<p class="class_'+sChankeyName+'">'
|
||||
+'<a href="'+profileLink+'" title="'+mission+'" target="_blank"><img src="'+databap.consts.app_image_folder+user_info.logo+'" style="vertical-align:middle" />'+afk+'</a>'
|
||||
+'<a class="connectedUser clickable '+sNickName+'" id="'+user_info.id_user+'" title="'+pm+'">'+sNickName+'</a>'
|
||||
+'</p>';
|
||||
$user = $(user).css("visibility", "hidden");
|
||||
var user = $('<p>', {'class':'connected_user class_'+sChankeyName})
|
||||
.append($('<a>', {'class':'connected_user_logo', href:profileLink, title:mission, target:'_blank'})
|
||||
.append($('<img>', {src:databap.consts.app_image_folder+user_info.logo}))
|
||||
.append((user_info.afk=='1')?$('<i>', {class:'fa fa-c-afk afk'}):''))
|
||||
.append($('<a>', {'class':'connected_user_name clickable '+sNickName, id:user_info.id_user, title:pm}).text(sNickName));
|
||||
|
||||
$user = $(user)/*.css("visibility", "hidden")*/;
|
||||
$user.find('.connectedUser').click(joinPmChan);
|
||||
databap.getMainElem('#connected_users').append($user);
|
||||
}
|
||||
@@ -734,7 +825,7 @@ function refresh_users()
|
||||
);
|
||||
|
||||
//Resize Nickname
|
||||
var iMaxSize = 126 - 24 - 5; //boxSize - imageSize - marginLeftSize
|
||||
/*var iMaxSize = 126 - 24 - 5; //boxSize - imageSize - marginLeftSize
|
||||
$.each
|
||||
(
|
||||
users_list,
|
||||
@@ -751,7 +842,7 @@ function refresh_users()
|
||||
$nick.parent().css("visibility", "visible");
|
||||
});
|
||||
}
|
||||
);
|
||||
);*/
|
||||
|
||||
switchChan();
|
||||
},
|
||||
@@ -793,9 +884,15 @@ function displayHelp()
|
||||
|
||||
//Visible on all channels
|
||||
$Help.find('p').addClass('class_'+databap.consts.all_chan_id);
|
||||
$Help.appendTo('#chat_messages').slideDown('fast', function(){oScrollbar.tinyscrollbar_update('bottom');});
|
||||
$Help.appendTo('#chat_messages').slideDown('fast', function()
|
||||
{
|
||||
databap.updateScrollBar('bottom');
|
||||
});
|
||||
|
||||
//Close button activation
|
||||
$Help.find('#close_help').click(function(){$(this).closest('.help').slideUp('fast', function(){oScrollbar.tinyscrollbar_update('bottom');});});
|
||||
$Help.find('#close_help').click(function(){$(this).closest('.help').slideUp('fast', function()
|
||||
{
|
||||
databap.updateScrollBar('bottom');
|
||||
});});
|
||||
}
|
||||
</script>
|
||||
Reference in New Issue
Block a user