mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-07 06:25:50 +01:00
testing breadcrumb images
This commit is contained in:
@@ -351,10 +351,82 @@ define(function() {
|
||||
|
||||
|
||||
socket.on('api:get_users_in_room', function(data) {
|
||||
var activeEl = $('#thread_active_users');
|
||||
if (activeEl.length)
|
||||
activeEl.html(data);
|
||||
if(data) {
|
||||
var activeEl = $('#thread_active_users');
|
||||
|
||||
function createUserIcon(uid, picture, userslug, username) {
|
||||
if(!activeEl.find("[href='/user/"+ data.users[i].userslug + "']").length) {
|
||||
var userIcon = $('<img src="'+ picture +'"/>');
|
||||
userIcon.css('height', '24px');
|
||||
|
||||
var userLink = $('<a href="/user/' + userslug + '"></a>').append(userIcon);
|
||||
userLink.attr('data-uid', uid);
|
||||
|
||||
userLink.tooltip({
|
||||
placement: 'left',
|
||||
title: username
|
||||
});
|
||||
|
||||
return userLink;
|
||||
}
|
||||
}
|
||||
|
||||
// remove users that are no longer here
|
||||
activeEl.children().each(function(index, element) {
|
||||
if(element) {
|
||||
var uid = $(element).attr('data-uid');
|
||||
for(var i=0; i<data.users.length; ++i) {
|
||||
if(data.users[i].uid == uid) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
$(element).remove();
|
||||
}
|
||||
});
|
||||
|
||||
var i=0;
|
||||
// add self
|
||||
for(i = 0; i<data.users.length; ++i) {
|
||||
if(data.users[i].uid == app.uid) {
|
||||
var icon = createUserIcon(data.users[i].uid, data.users[i].picture, data.users[i].userslug, data.users[i].username);
|
||||
activeEl.prepend(icon);
|
||||
data.users.splice(i, 1);
|
||||
break;
|
||||
}
|
||||
}
|
||||
// add other users
|
||||
for(i=0; i<data.users.length; ++i) {
|
||||
icon = createUserIcon(data.users[i].uid, data.users[i].picture, data.users[i].userslug, data.users[i].username)
|
||||
activeEl.append(icon);
|
||||
if(activeEl.children().length > 8) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
var remainingUsers = data.users.length - 9;
|
||||
remainingUsers = remainingUsers < 0 ? 0 : remainingUsers;
|
||||
var anonymousCount = parseInt(data.anonymousCount, 10);
|
||||
activeEl.find('.anon').remove();
|
||||
if(anonymousCount || remainingUsers) {
|
||||
|
||||
var anonLink = $('<i class="icon-user anon"></i>');
|
||||
anonLink.css('padding', '5px');
|
||||
activeEl.append(anonLink);
|
||||
|
||||
var title = '';
|
||||
if(remainingUsers && anonymousCount)
|
||||
title = remainingUsers + ' more user(s) and ' + anonymousCount + ' guest(s)';
|
||||
else if(remainingUsers)
|
||||
title = remainingUsers + ' more user(s)';
|
||||
else
|
||||
title = anonymousCount + ' guest(s)';
|
||||
|
||||
anonLink.tooltip({
|
||||
placement: 'left',
|
||||
title: title
|
||||
});
|
||||
}
|
||||
}
|
||||
app.populate_online_users();
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user