PLT-3593 fixing issue of removing from team DM list (#3857)
Этот коммит содержится в:
коммит произвёл
Joram Wilander
родитель
05f8d138f4
Коммит
e1fdc63f28
@@ -30,8 +30,8 @@ export function switchFromLdapToEmail(email, password, ldapPassword, onSuccess,
|
|||||||
}
|
}
|
||||||
|
|
||||||
export function getMoreDmList() {
|
export function getMoreDmList() {
|
||||||
AsyncClient.getProfilesForDirectMessageList();
|
|
||||||
AsyncClient.getTeamMembers(TeamStore.getCurrentId());
|
AsyncClient.getTeamMembers(TeamStore.getCurrentId());
|
||||||
|
AsyncClient.getProfilesForDirectMessageList();
|
||||||
}
|
}
|
||||||
|
|
||||||
export function saveTheme(teamId, theme, onSuccess, onError) {
|
export function saveTheme(teamId, theme, onSuccess, onError) {
|
||||||
|
|||||||
@@ -79,7 +79,10 @@ function handleReconnect() {
|
|||||||
if (Client.teamId) {
|
if (Client.teamId) {
|
||||||
AsyncClient.getChannels();
|
AsyncClient.getChannels();
|
||||||
AsyncClient.getPosts(ChannelStore.getCurrentId());
|
AsyncClient.getPosts(ChannelStore.getCurrentId());
|
||||||
|
AsyncClient.getTeamMembers(TeamStore.getCurrentId());
|
||||||
|
AsyncClient.getProfiles();
|
||||||
}
|
}
|
||||||
|
|
||||||
getStatuses();
|
getStatuses();
|
||||||
ErrorStore.clearLastError();
|
ErrorStore.clearLastError();
|
||||||
ErrorStore.emitChange();
|
ErrorStore.emitChange();
|
||||||
@@ -183,6 +186,7 @@ function handlePostDeleteEvent(msg) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function handleNewUserEvent() {
|
function handleNewUserEvent() {
|
||||||
|
AsyncClient.getTeamMembers(TeamStore.getCurrentId());
|
||||||
AsyncClient.getProfiles();
|
AsyncClient.getProfiles();
|
||||||
AsyncClient.getDirectProfiles();
|
AsyncClient.getDirectProfiles();
|
||||||
AsyncClient.getChannelExtraInfo();
|
AsyncClient.getChannelExtraInfo();
|
||||||
|
|||||||
@@ -133,7 +133,7 @@ export default class Sidebar extends React.Component {
|
|||||||
directChannel.teammate_id = teammateId;
|
directChannel.teammate_id = teammateId;
|
||||||
directChannel.status = UserStore.getStatus(teammateId) || 'offline';
|
directChannel.status = UserStore.getStatus(teammateId) || 'offline';
|
||||||
|
|
||||||
if (UserStore.hasTeamProfile(teammateId)) {
|
if (UserStore.hasTeamProfile(teammateId) && TeamStore.hasActiveMemberForTeam(teammateId)) {
|
||||||
directChannels.push(directChannel);
|
directChannels.push(directChannel);
|
||||||
} else {
|
} else {
|
||||||
directNonTeamChannels.push(directChannel);
|
directNonTeamChannels.push(directChannel);
|
||||||
|
|||||||
@@ -78,6 +78,7 @@ function preNeedsTeam(nextState, replace, callback) {
|
|||||||
|
|
||||||
var d1 = $.Deferred(); //eslint-disable-line new-cap
|
var d1 = $.Deferred(); //eslint-disable-line new-cap
|
||||||
var d2 = $.Deferred(); //eslint-disable-line new-cap
|
var d2 = $.Deferred(); //eslint-disable-line new-cap
|
||||||
|
var d3 = $.Deferred(); //eslint-disable-line new-cap
|
||||||
|
|
||||||
Client.getChannels(
|
Client.getChannels(
|
||||||
(data) => {
|
(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();
|
callback();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -157,6 +157,19 @@ class TeamStoreClass extends EventEmitter {
|
|||||||
return this.members_for_team;
|
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) {
|
saveTeamListings(teams) {
|
||||||
this.teamListings = teams;
|
this.teamListings = teams;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -584,8 +584,6 @@ export function getPostsPage(id, maxPosts) {
|
|||||||
checkLatest: true,
|
checkLatest: true,
|
||||||
post_list: data
|
post_list: data
|
||||||
});
|
});
|
||||||
|
|
||||||
getProfiles();
|
|
||||||
},
|
},
|
||||||
(err) => {
|
(err) => {
|
||||||
dispatchError(err, 'getPostsPage');
|
dispatchError(err, 'getPostsPage');
|
||||||
@@ -632,8 +630,6 @@ export function getPosts(id) {
|
|||||||
numRequested: 0,
|
numRequested: 0,
|
||||||
post_list: data
|
post_list: data
|
||||||
});
|
});
|
||||||
|
|
||||||
getProfiles();
|
|
||||||
},
|
},
|
||||||
(err) => {
|
(err) => {
|
||||||
dispatchError(err, 'getPosts');
|
dispatchError(err, 'getPosts');
|
||||||
@@ -668,8 +664,6 @@ export function getPostsBefore(postId, offset, numPost, isPost) {
|
|||||||
post_list: data,
|
post_list: data,
|
||||||
isPost
|
isPost
|
||||||
});
|
});
|
||||||
|
|
||||||
getProfiles();
|
|
||||||
},
|
},
|
||||||
(err) => {
|
(err) => {
|
||||||
dispatchError(err, 'getPostsBefore');
|
dispatchError(err, 'getPostsBefore');
|
||||||
@@ -704,8 +698,6 @@ export function getPostsAfter(postId, offset, numPost, isPost) {
|
|||||||
post_list: data,
|
post_list: data,
|
||||||
isPost
|
isPost
|
||||||
});
|
});
|
||||||
|
|
||||||
getProfiles();
|
|
||||||
},
|
},
|
||||||
(err) => {
|
(err) => {
|
||||||
dispatchError(err, 'getPostsAfter');
|
dispatchError(err, 'getPostsAfter');
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user