Friend button in the userlist
This commit is contained in:
parent
8dc8aa27ab
commit
bf17ad3f1e
@ -138,11 +138,22 @@ body .userlist-drawer {
|
|||||||
color: black;
|
color: black;
|
||||||
font-size: 40px;
|
font-size: 40px;
|
||||||
}
|
}
|
||||||
.name {
|
.right-col {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
|
display: flex;
|
||||||
|
flex-flow: column;
|
||||||
|
.name {
|
||||||
|
flex: 1;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
.friend {
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
media-tag {
|
media-tag {
|
||||||
min-height: 50px;
|
min-height: 50px;
|
||||||
|
|||||||
@ -1185,6 +1185,21 @@ define([
|
|||||||
return button;
|
return button;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Messaging
|
||||||
|
var addDirectMessageHandler = function () {
|
||||||
|
var network = getNetwork();
|
||||||
|
if (!network) { return void console.error('Network not ready'); }
|
||||||
|
network.on('message', function (msg, sender) {
|
||||||
|
if (sender === network.historyKeeper) { return; }
|
||||||
|
|
||||||
|
});
|
||||||
|
};
|
||||||
|
common.inviteFromUserlist = function (netfluxId) {
|
||||||
|
var network = getNetwork();
|
||||||
|
network.sendto(netfluxId, '["FRIEND_REQ", "Salut"]')
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
var emoji_patt = /([\uD800-\uDBFF][\uDC00-\uDFFF])/;
|
var emoji_patt = /([\uD800-\uDBFF][\uDC00-\uDFFF])/;
|
||||||
var isEmoji = function (str) {
|
var isEmoji = function (str) {
|
||||||
@ -1691,6 +1706,8 @@ define([
|
|||||||
Store.ready(function (err, storeObj) {
|
Store.ready(function (err, storeObj) {
|
||||||
store = common.store = env.store = storeObj;
|
store = common.store = env.store = storeObj;
|
||||||
|
|
||||||
|
addDirectMessageHandler();
|
||||||
|
|
||||||
var proxy = getProxy();
|
var proxy = getProxy();
|
||||||
var network = getNetwork();
|
var network = getNetwork();
|
||||||
|
|
||||||
|
|||||||
@ -200,7 +200,8 @@ types of messages:
|
|||||||
return sendMsg(ctx, data, cb);
|
return sendMsg(ctx, data, cb);
|
||||||
};
|
};
|
||||||
|
|
||||||
network.on('message', function (msg) {
|
network.on('message', function (msg, sender) {
|
||||||
|
if (sender !== network.historyKeeper) { return; }
|
||||||
onMsg(ctx, msg);
|
onMsg(ctx, msg);
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -305,6 +306,7 @@ types of messages:
|
|||||||
};
|
};
|
||||||
|
|
||||||
network.on('message', function (msg) {
|
network.on('message', function (msg) {
|
||||||
|
if (sender !== network.historyKeeper) { return; }
|
||||||
onAnonMsg(ctx, msg);
|
onAnonMsg(ctx, msg);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
@ -148,7 +148,8 @@ define([
|
|||||||
//if (user !== userNetfluxId) {
|
//if (user !== userNetfluxId) {
|
||||||
var data = userData[user] || {};
|
var data = userData[user] || {};
|
||||||
var userId = data.uid;
|
var userId = data.uid;
|
||||||
if (!data.uid) { return; }
|
if (!userId) { return; }
|
||||||
|
data.netfluxId = user;
|
||||||
if (uids.indexOf(userId) === -1) {// && (!myUid || userId !== myUid)) {
|
if (uids.indexOf(userId) === -1) {// && (!myUid || userId !== myUid)) {
|
||||||
uids.push(userId);
|
uids.push(userId);
|
||||||
list.push(data);
|
list.push(data);
|
||||||
@ -206,8 +207,17 @@ define([
|
|||||||
// Editors
|
// Editors
|
||||||
editUsersNames.forEach(function (data) {
|
editUsersNames.forEach(function (data) {
|
||||||
var name = data.name || Messages.anonymous;
|
var name = data.name || Messages.anonymous;
|
||||||
var $name = $('<span>', {'class': 'name'}).text(name);
|
|
||||||
var $span = $('<span>', {'title': name});
|
var $span = $('<span>', {'title': name});
|
||||||
|
var $rightCol = $('<span>', {'class': 'right-col'});
|
||||||
|
var $name = $('<span>', {'class': 'name'}).text(name).appendTo($rightCol);
|
||||||
|
// TODO: if account
|
||||||
|
var $button = $('<button>', {'class': 'friend'}).appendTo($rightCol);
|
||||||
|
$button.text('Add friend').click(function (e) {
|
||||||
|
console.log('TODO');
|
||||||
|
e.stopPropagation();
|
||||||
|
Cryptpad.inviteFromUserlist(data.netfluxId);
|
||||||
|
});
|
||||||
|
// TODO: end if
|
||||||
if (data.profile) {
|
if (data.profile) {
|
||||||
$span.addClass('clickable');
|
$span.addClass('clickable');
|
||||||
$span.click(function () {
|
$span.click(function () {
|
||||||
@ -216,13 +226,13 @@ define([
|
|||||||
}
|
}
|
||||||
if (data.avatar && avatars[data.avatar]) {
|
if (data.avatar && avatars[data.avatar]) {
|
||||||
$span.append(avatars[data.avatar]);
|
$span.append(avatars[data.avatar]);
|
||||||
$span.append($name);
|
$span.append($rightCol);
|
||||||
} else {
|
} else {
|
||||||
Cryptpad.displayAvatar($span, data.avatar, name, function ($img) {
|
Cryptpad.displayAvatar($span, data.avatar, name, function ($img) {
|
||||||
if (data.avatar && $img) {
|
if (data.avatar && $img) {
|
||||||
avatars[data.avatar] = $img[0].outerHTML;
|
avatars[data.avatar] = $img[0].outerHTML;
|
||||||
}
|
}
|
||||||
$span.append($name);
|
$span.append($rightCol);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
$span.data('uid', data.uid);
|
$span.data('uid', data.uid);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user