You've already forked matrix-js-sdk
mirror of
https://github.com/matrix-org/matrix-js-sdk.git
synced 2025-09-01 21:21:58 +03:00
Simplify logic and layout
This commit is contained in:
@@ -415,6 +415,11 @@ function setEventMetadata(event, stateContext, toStartOfTimeline) {
|
|||||||
function calculateRoomName(room, userId) {
|
function calculateRoomName(room, userId) {
|
||||||
// check for an alias, if any. for now, assume first alias is the
|
// check for an alias, if any. for now, assume first alias is the
|
||||||
// official one.
|
// official one.
|
||||||
|
var mRoomName = room.currentState.getStateEvents('m.room.name', '');
|
||||||
|
if (mRoomName) {
|
||||||
|
return mRoomName.getContent().name;
|
||||||
|
}
|
||||||
|
|
||||||
var alias;
|
var alias;
|
||||||
var canonicalAlias = room.currentState.getStateEvents("m.room.canonical_alias", "");
|
var canonicalAlias = room.currentState.getStateEvents("m.room.canonical_alias", "");
|
||||||
if (canonicalAlias) {
|
if (canonicalAlias) {
|
||||||
@@ -427,58 +432,52 @@ function calculateRoomName(room, userId) {
|
|||||||
alias = mRoomAliases.getContent().aliases[0];
|
alias = mRoomAliases.getContent().aliases[0];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if (alias) {
|
||||||
var mRoomName = room.currentState.getStateEvents('m.room.name', '');
|
|
||||||
if (mRoomName) {
|
|
||||||
return mRoomName.getContent().name + (false && alias ? " (" + alias + ")" : "");
|
|
||||||
}
|
|
||||||
else if (alias) {
|
|
||||||
return alias;
|
return alias;
|
||||||
}
|
}
|
||||||
else {
|
|
||||||
// get members that are NOT ourselves and are actually in the room.
|
// get members that are NOT ourselves and are actually in the room.
|
||||||
var members = utils.filter(room.currentState.getMembers(), function(m) {
|
var members = utils.filter(room.currentState.getMembers(), function(m) {
|
||||||
return (m.userId !== userId && m.membership !== "leave");
|
return (m.userId !== userId && m.membership !== "leave");
|
||||||
|
});
|
||||||
|
// TODO: Localisation
|
||||||
|
if (members.length === 0) {
|
||||||
|
var memberList = utils.filter(room.currentState.getMembers(), function(m) {
|
||||||
|
return (m.membership !== "leave");
|
||||||
});
|
});
|
||||||
// TODO: Localisation
|
if (memberList.length === 1) {
|
||||||
if (members.length === 0) {
|
// we exist, but no one else... self-chat or invite.
|
||||||
var memberList = utils.filter(room.currentState.getMembers(), function(m) {
|
if (memberList[0].membership === "invite") {
|
||||||
return (m.membership !== "leave");
|
if (memberList[0].events.member) {
|
||||||
});
|
// extract who invited us to the room
|
||||||
if (memberList.length === 1) {
|
return "Invite from " + memberList[0].events.member.getSender();
|
||||||
// we exist, but no one else... self-chat or invite.
|
|
||||||
if (memberList[0].membership === "invite") {
|
|
||||||
if (memberList[0].events.member) {
|
|
||||||
// extract who invited us to the room
|
|
||||||
return "Invite from " + memberList[0].events.member.getSender();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return "Room Invite";
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
return userId;
|
return "Room Invite";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// there really isn't anyone in this room...
|
return userId;
|
||||||
return "?";
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (members.length === 1) {
|
|
||||||
return members[0].name;
|
|
||||||
}
|
|
||||||
else if (members.length === 2) {
|
|
||||||
return (
|
|
||||||
members[0].name + " and " + members[1].name
|
|
||||||
);
|
|
||||||
}
|
|
||||||
else {
|
else {
|
||||||
return (
|
// there really isn't anyone in this room...
|
||||||
members[0].name + " and " + (members.length - 1) + " others"
|
return "?";
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (members.length === 1) {
|
||||||
|
return members[0].name;
|
||||||
|
}
|
||||||
|
else if (members.length === 2) {
|
||||||
|
return (
|
||||||
|
members[0].name + " and " + members[1].name
|
||||||
|
);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return (
|
||||||
|
members[0].name + " and " + (members.length - 1) + " others"
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Reference in New Issue
Block a user