switch from the deprecated msg.content.prev to msg.prev_content.membership, and fix the bug where kicks of unjoined users aren't displayed sensibly in the history

This commit is contained in:
Matthew Hodgson 2014-10-24 16:14:47 +01:00
parent be6d41ffe5
commit 1342bcedaf
3 changed files with 9 additions and 9 deletions

View File

@ -256,7 +256,7 @@ function(matrixService, $rootScope, $q, $timeout, mPresence) {
// could be a membership change, display name change, etc. // could be a membership change, display name change, etc.
// Find out which one. // Find out which one.
var memberChanges = undefined; var memberChanges = undefined;
if (event.content.prev !== event.content.membership) { if (event.prev_content && (event.prev_content.membership !== event.content.membership)) {
memberChanges = "membership"; memberChanges = "membership";
} }
else if (event.prev_content && (event.prev_content.displayname !== event.content.displayname)) { else if (event.prev_content && (event.prev_content.displayname !== event.content.displayname)) {

View File

@ -42,12 +42,12 @@
<span ng-if="lastMsg.user_id === lastMsg.state_key"> <span ng-if="lastMsg.user_id === lastMsg.state_key">
{{lastMsg.state_key | mUserDisplayName: room.room_id }} left {{lastMsg.state_key | mUserDisplayName: room.room_id }} left
</span> </span>
<span ng-if="lastMsg.user_id !== lastMsg.state_key"> <span ng-if="lastMsg.user_id !== lastMsg.state_key && lastMsg.prev_content">
{{ lastMsg.user_id | mUserDisplayName: room.room_id }} {{ lastMsg.user_id | mUserDisplayName: room.room_id }}
{{ {"join": "kicked", "ban": "unbanned"}[lastMsg.content.prev] }} {{ {"invite": "kicked", "join": "kicked", "ban": "unbanned"}[lastMsg.prev_content.membership] }}
{{ lastMsg.state_key | mUserDisplayName: room.room_id }} {{ lastMsg.state_key | mUserDisplayName: room.room_id }}
</span> </span>
<span ng-if="'join' === lastMsg.content.prev && lastMsg.content.reason"> <span ng-if="lastMsg.prev_content && 'join' === lastMsg.prev_content.membership && lastMsg.content.reason">
: {{ lastMsg.content.reason }} : {{ lastMsg.content.reason }}
</span> </span>
</span> </span>
@ -55,7 +55,7 @@
{{ lastMsg.user_id | mUserDisplayName: room.room_id }} {{ lastMsg.user_id | mUserDisplayName: room.room_id }}
{{ {"invite": "invited", "ban": "banned"}[lastMsg.content.membership] }} {{ {"invite": "invited", "ban": "banned"}[lastMsg.content.membership] }}
{{ lastMsg.state_key | mUserDisplayName: room.room_id }} {{ lastMsg.state_key | mUserDisplayName: room.room_id }}
<span ng-if="'ban' === lastMsg.content.prev && lastMsg.content.reason"> <span ng-if="lastMsg.prev_content && 'ban' === lastMsg.prev_content.membership && lastMsg.content.reason">
: {{ lastMsg.content.reason }} : {{ lastMsg.content.reason }}
</span> </span>
</span> </span>

View File

@ -91,11 +91,11 @@
<span ng-if="msg.user_id === msg.state_key"> <span ng-if="msg.user_id === msg.state_key">
{{ members[msg.state_key].displayname || msg.state_key }} left {{ members[msg.state_key].displayname || msg.state_key }} left
</span> </span>
<span ng-if="msg.user_id !== msg.state_key"> <span ng-if="msg.user_id !== msg.state_key && msg.prev_content">
{{ members[msg.user_id].displayname || msg.user_id }} {{ members[msg.user_id].displayname || msg.user_id }}
{{ {"join": "kicked", "ban": "unbanned"}[msg.content.prev] }} {{ {"invite": "kicked", "join": "kicked", "ban": "unbanned"}[msg.prev_content.membership] }}
{{ members[msg.state_key].displayname || msg.state_key }} {{ members[msg.state_key].displayname || msg.state_key }}
<span ng-if="'join' === msg.content.prev && msg.content.reason"> <span ng-if="'join' === msg.prev_content.membership && msg.content.reason">
: {{ msg.content.reason }} : {{ msg.content.reason }}
</span> </span>
</span> </span>
@ -105,7 +105,7 @@
{{ members[msg.user_id].displayname || msg.user_id }} {{ members[msg.user_id].displayname || msg.user_id }}
{{ {"invite": "invited", "ban": "banned"}[msg.content.membership] }} {{ {"invite": "invited", "ban": "banned"}[msg.content.membership] }}
{{ members[msg.state_key].displayname || msg.state_key }} {{ members[msg.state_key].displayname || msg.state_key }}
<span ng-if="'ban' === msg.content.prev && msg.content.reason"> <span ng-if="msg.prev_content && 'ban' === msg.prev_content.membership && msg.content.reason">
: {{ msg.content.reason }} : {{ msg.content.reason }}
</span> </span>
</span> </span>