PLT-6023: Add Users to Team in WebApp. (#5956)
* PLT-6198: Use added to channel system message on default channels. Use a different sytem message when a user was added to a default channel by someone else than when they joined themselves. * PLT-6023: Add Users to Team in WebApp. * Fix string text. * Handle added_to_team websocket message. * Fix unread flag on new channel.
Этот коммит содержится в:
коммит произвёл
Christopher Speller
родитель
77a76487a8
Коммит
1fa3f2351c
@@ -114,6 +114,31 @@ export function addUserToTeamFromInvite(data, hash, inviteId, success, error) {
|
||||
);
|
||||
}
|
||||
|
||||
export function addUsersToTeam(teamId, userIds, success, error) {
|
||||
Client.addUsersToTeam(
|
||||
teamId,
|
||||
userIds,
|
||||
(teamMembers) => {
|
||||
teamMembers.forEach((member) => {
|
||||
TeamStore.removeMemberNotInTeam(teamId, member.user_id);
|
||||
UserStore.removeProfileNotInTeam(teamId, member.user_id);
|
||||
});
|
||||
UserStore.emitNotInTeamChange();
|
||||
|
||||
if (success) {
|
||||
success(teamMembers);
|
||||
}
|
||||
},
|
||||
(err) => {
|
||||
AsyncClient.dispatchError(err, 'addUsersToTeam');
|
||||
|
||||
if (error) {
|
||||
error(err);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
export function getInviteInfo(inviteId, success, error) {
|
||||
Client.getInviteInfo(
|
||||
inviteId,
|
||||
|
||||
@@ -492,6 +492,28 @@ export function searchUsers(term, teamId = TeamStore.getCurrentId(), options = {
|
||||
);
|
||||
}
|
||||
|
||||
export function searchUsersNotInTeam(term, teamId = TeamStore.getCurrentId(), options = {}, success, error) {
|
||||
Client.searchUsersNotInTeam(
|
||||
term,
|
||||
teamId,
|
||||
options,
|
||||
(data) => {
|
||||
loadStatusesForProfilesList(data);
|
||||
|
||||
if (success) {
|
||||
success(data);
|
||||
}
|
||||
},
|
||||
(err) => {
|
||||
AsyncClient.dispatchError(err, 'searchUsersNotInTeam');
|
||||
|
||||
if (error) {
|
||||
error(err);
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
export function autocompleteUsersInChannel(username, channelId, success, error) {
|
||||
Client.autocompleteUsersInChannel(
|
||||
username,
|
||||
|
||||
@@ -153,6 +153,10 @@ function handleEvent(msg) {
|
||||
handleUpdateTeamEvent(msg);
|
||||
break;
|
||||
|
||||
case SocketEvents.ADDED_TO_TEAM:
|
||||
handleTeamAddedEvent(msg);
|
||||
break;
|
||||
|
||||
case SocketEvents.USER_ADDED:
|
||||
handleUserAddedEvent(msg);
|
||||
break;
|
||||
@@ -241,6 +245,27 @@ function handlePostDeleteEvent(msg) {
|
||||
GlobalActions.emitPostDeletedEvent(post);
|
||||
}
|
||||
|
||||
function handleTeamAddedEvent(msg) {
|
||||
Client.getTeam(msg.data.team_id, (team) => {
|
||||
AppDispatcher.handleServerAction({
|
||||
type: ActionTypes.RECEIVED_TEAM,
|
||||
team
|
||||
});
|
||||
|
||||
Client.getMyTeamMembers((data) => {
|
||||
AppDispatcher.handleServerAction({
|
||||
type: ActionTypes.RECEIVED_MY_TEAM_MEMBERS,
|
||||
team_members: data
|
||||
});
|
||||
AsyncClient.getMyTeamsUnread();
|
||||
}, (err) => {
|
||||
AsyncClient.dispatchError(err, 'getMyTeamMembers');
|
||||
});
|
||||
}, (err) => {
|
||||
AsyncClient.dispatchError(err, 'getTeam');
|
||||
});
|
||||
}
|
||||
|
||||
function handleLeaveTeamEvent(msg) {
|
||||
if (UserStore.getCurrentId() === msg.data.user_id) {
|
||||
TeamStore.removeMyTeamMember(msg.data.team_id);
|
||||
|
||||
Ссылка в новой задаче
Block a user