mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
PLT-3593 fixing issue of removing from team DM list (#3857)
This commit is contained in:
committed by
Joram Wilander
parent
05f8d138f4
commit
e1fdc63f28
@@ -30,8 +30,8 @@ export function switchFromLdapToEmail(email, password, ldapPassword, onSuccess,
|
||||
}
|
||||
|
||||
export function getMoreDmList() {
|
||||
AsyncClient.getProfilesForDirectMessageList();
|
||||
AsyncClient.getTeamMembers(TeamStore.getCurrentId());
|
||||
AsyncClient.getProfilesForDirectMessageList();
|
||||
}
|
||||
|
||||
export function saveTheme(teamId, theme, onSuccess, onError) {
|
||||
|
||||
@@ -79,7 +79,10 @@ function handleReconnect() {
|
||||
if (Client.teamId) {
|
||||
AsyncClient.getChannels();
|
||||
AsyncClient.getPosts(ChannelStore.getCurrentId());
|
||||
AsyncClient.getTeamMembers(TeamStore.getCurrentId());
|
||||
AsyncClient.getProfiles();
|
||||
}
|
||||
|
||||
getStatuses();
|
||||
ErrorStore.clearLastError();
|
||||
ErrorStore.emitChange();
|
||||
@@ -183,6 +186,7 @@ function handlePostDeleteEvent(msg) {
|
||||
}
|
||||
|
||||
function handleNewUserEvent() {
|
||||
AsyncClient.getTeamMembers(TeamStore.getCurrentId());
|
||||
AsyncClient.getProfiles();
|
||||
AsyncClient.getDirectProfiles();
|
||||
AsyncClient.getChannelExtraInfo();
|
||||
|
||||
@@ -133,7 +133,7 @@ export default class Sidebar extends React.Component {
|
||||
directChannel.teammate_id = teammateId;
|
||||
directChannel.status = UserStore.getStatus(teammateId) || 'offline';
|
||||
|
||||
if (UserStore.hasTeamProfile(teammateId)) {
|
||||
if (UserStore.hasTeamProfile(teammateId) && TeamStore.hasActiveMemberForTeam(teammateId)) {
|
||||
directChannels.push(directChannel);
|
||||
} else {
|
||||
directNonTeamChannels.push(directChannel);
|
||||
|
||||
@@ -78,6 +78,7 @@ function preNeedsTeam(nextState, replace, callback) {
|
||||
|
||||
var d1 = $.Deferred(); //eslint-disable-line new-cap
|
||||
var d2 = $.Deferred(); //eslint-disable-line new-cap
|
||||
var d3 = $.Deferred(); //eslint-disable-line new-cap
|
||||
|
||||
Client.getChannels(
|
||||
(data) => {
|
||||
@@ -110,7 +111,23 @@ function preNeedsTeam(nextState, replace, callback) {
|
||||
}
|
||||
);
|
||||
|
||||
$.when(d1, d2).done(() => {
|
||||
Client.getTeamMembers(
|
||||
TeamStore.getCurrentId(),
|
||||
(data) => {
|
||||
AppDispatcher.handleServerAction({
|
||||
type: ActionTypes.RECEIVED_MEMBERS_FOR_TEAM,
|
||||
team_members: data
|
||||
});
|
||||
|
||||
d3.resolve();
|
||||
},
|
||||
(err) => {
|
||||
AsyncClient.dispatchError(err, 'getTeamMembers');
|
||||
d3.resolve();
|
||||
}
|
||||
);
|
||||
|
||||
$.when(d1, d2, d3).done(() => {
|
||||
callback();
|
||||
});
|
||||
}
|
||||
|
||||
@@ -157,6 +157,19 @@ class TeamStoreClass extends EventEmitter {
|
||||
return this.members_for_team;
|
||||
}
|
||||
|
||||
hasActiveMemberForTeam(userId) {
|
||||
for (var index in this.members_for_team) {
|
||||
if (this.members_for_team.hasOwnProperty(index)) {
|
||||
if (this.members_for_team[index].user_id === userId &&
|
||||
this.members_for_team[index].team_id === this.currentTeamId) {
|
||||
return this.members_for_team[index].delete_at === 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
saveTeamListings(teams) {
|
||||
this.teamListings = teams;
|
||||
}
|
||||
|
||||
@@ -584,8 +584,6 @@ export function getPostsPage(id, maxPosts) {
|
||||
checkLatest: true,
|
||||
post_list: data
|
||||
});
|
||||
|
||||
getProfiles();
|
||||
},
|
||||
(err) => {
|
||||
dispatchError(err, 'getPostsPage');
|
||||
@@ -632,8 +630,6 @@ export function getPosts(id) {
|
||||
numRequested: 0,
|
||||
post_list: data
|
||||
});
|
||||
|
||||
getProfiles();
|
||||
},
|
||||
(err) => {
|
||||
dispatchError(err, 'getPosts');
|
||||
@@ -668,8 +664,6 @@ export function getPostsBefore(postId, offset, numPost, isPost) {
|
||||
post_list: data,
|
||||
isPost
|
||||
});
|
||||
|
||||
getProfiles();
|
||||
},
|
||||
(err) => {
|
||||
dispatchError(err, 'getPostsBefore');
|
||||
@@ -704,8 +698,6 @@ export function getPostsAfter(postId, offset, numPost, isPost) {
|
||||
post_list: data,
|
||||
isPost
|
||||
});
|
||||
|
||||
getProfiles();
|
||||
},
|
||||
(err) => {
|
||||
dispatchError(err, 'getPostsAfter');
|
||||
|
||||
Reference in New Issue
Block a user