PLT-5044 Fix unread team messages for deleted channels (#4836)
Этот коммит содержится в:
@@ -599,7 +599,7 @@ func (s SqlTeamStore) GetTeamsUnreadForUser(teamId, userId string) StoreChannel
|
|||||||
Channels,
|
Channels,
|
||||||
ChannelMembers
|
ChannelMembers
|
||||||
WHERE
|
WHERE
|
||||||
Channels.Id = ChannelMembers.ChannelId AND
|
Channels.Id = ChannelMembers.ChannelId AND Channels.DeleteAt = 0 AND
|
||||||
ChannelMembers.UserId = :UserId AND Channels.TeamId != :TeamId
|
ChannelMembers.UserId = :UserId AND Channels.TeamId != :TeamId
|
||||||
GROUP BY
|
GROUP BY
|
||||||
Channels.TeamId`, map[string]interface{}{"UserId": userId, "TeamId": teamId})
|
Channels.TeamId`, map[string]interface{}{"UserId": userId, "TeamId": teamId})
|
||||||
|
|||||||
@@ -70,37 +70,40 @@ function preNeedsTeam(nextState, replace, callback) {
|
|||||||
browserHistory.push('/');
|
browserHistory.push('/');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
if (nextState.location.pathname.indexOf('/channels/') > -1) {
|
||||||
|
GlobalActions.emitCloseRightHandSide();
|
||||||
|
|
||||||
GlobalActions.emitCloseRightHandSide();
|
TeamStore.saveMyTeam(team);
|
||||||
|
TeamStore.emitChange();
|
||||||
|
loadProfilesAndTeamMembersForDMSidebar();
|
||||||
|
AsyncClient.getMyTeamsUnread();
|
||||||
|
AsyncClient.getMyChannelMembers();
|
||||||
|
|
||||||
TeamStore.saveMyTeam(team);
|
const d1 = $.Deferred(); //eslint-disable-line new-cap
|
||||||
TeamStore.emitChange();
|
|
||||||
loadProfilesAndTeamMembersForDMSidebar();
|
|
||||||
AsyncClient.getMyTeamsUnread();
|
|
||||||
AsyncClient.getMyChannelMembers();
|
|
||||||
|
|
||||||
const d1 = $.Deferred(); //eslint-disable-line new-cap
|
Client.getChannels(
|
||||||
|
(data) => {
|
||||||
|
AppDispatcher.handleServerAction({
|
||||||
|
type: ActionTypes.RECEIVED_CHANNELS,
|
||||||
|
channels: data
|
||||||
|
});
|
||||||
|
|
||||||
Client.getChannels(
|
loadStatusesForChannelAndSidebar();
|
||||||
(data) => {
|
|
||||||
AppDispatcher.handleServerAction({
|
|
||||||
type: ActionTypes.RECEIVED_CHANNELS,
|
|
||||||
channels: data
|
|
||||||
});
|
|
||||||
|
|
||||||
loadStatusesForChannelAndSidebar();
|
d1.resolve();
|
||||||
|
},
|
||||||
|
(err) => {
|
||||||
|
AsyncClient.dispatchError(err, 'getChannels');
|
||||||
|
d1.resolve();
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
d1.resolve();
|
$.when(d1).done(() => {
|
||||||
},
|
callback();
|
||||||
(err) => {
|
});
|
||||||
AsyncClient.dispatchError(err, 'getChannels');
|
} else {
|
||||||
d1.resolve();
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
$.when(d1).done(() => {
|
|
||||||
callback();
|
callback();
|
||||||
});
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function selectLastChannel(nextState, replace, callback) {
|
function selectLastChannel(nextState, replace, callback) {
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user