PLT-1384 Synced preferences over the websocket (#6108)
Этот коммит содержится в:
коммит произвёл
George Goldberg
родитель
ff8b91027f
Коммит
4a49dec7ad
@@ -403,11 +403,33 @@ export function emitPreferenceChangedEvent(preference) {
|
|||||||
preference
|
preference
|
||||||
});
|
});
|
||||||
|
|
||||||
if (preference.category === Constants.Preferences.CATEGORY_DIRECT_CHANNEL_SHOW) {
|
if (addedNewDmUser(preference)) {
|
||||||
loadProfilesForSidebar();
|
loadProfilesForSidebar();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function emitPreferencesChangedEvent(preferences) {
|
||||||
|
AppDispatcher.handleServerAction({
|
||||||
|
type: Constants.ActionTypes.RECEIVED_PREFERENCES,
|
||||||
|
preferences
|
||||||
|
});
|
||||||
|
|
||||||
|
if (preferences.findIndex(addedNewDmUser) !== -1) {
|
||||||
|
loadProfilesForSidebar();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function addedNewDmUser(preference) {
|
||||||
|
return preference.category === Constants.Preferences.CATEGORY_DIRECT_CHANNEL_SHOW && preference.value === 'true';
|
||||||
|
}
|
||||||
|
|
||||||
|
export function emitPreferencesDeletedEvent(preferences) {
|
||||||
|
AppDispatcher.handleServerAction({
|
||||||
|
type: Constants.ActionTypes.DELETED_PREFERENCES,
|
||||||
|
preferences
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
export function emitRemovePost(post) {
|
export function emitRemovePost(post) {
|
||||||
AppDispatcher.handleViewAction({
|
AppDispatcher.handleViewAction({
|
||||||
type: Constants.ActionTypes.REMOVE_POST,
|
type: Constants.ActionTypes.REMOVE_POST,
|
||||||
|
|||||||
@@ -185,6 +185,14 @@ function handleEvent(msg) {
|
|||||||
handlePreferenceChangedEvent(msg);
|
handlePreferenceChangedEvent(msg);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case SocketEvents.PREFERENCES_CHANGED:
|
||||||
|
handlePreferencesChangedEvent(msg);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SocketEvents.PREFERENCES_DELETED:
|
||||||
|
handlePreferencesDeletedEvent(msg);
|
||||||
|
break;
|
||||||
|
|
||||||
case SocketEvents.TYPING:
|
case SocketEvents.TYPING:
|
||||||
handleUserTypingEvent(msg);
|
handleUserTypingEvent(msg);
|
||||||
break;
|
break;
|
||||||
@@ -356,6 +364,16 @@ function handlePreferenceChangedEvent(msg) {
|
|||||||
GlobalActions.emitPreferenceChangedEvent(preference);
|
GlobalActions.emitPreferenceChangedEvent(preference);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function handlePreferencesChangedEvent(msg) {
|
||||||
|
const preferences = JSON.parse(msg.data.preferences);
|
||||||
|
GlobalActions.emitPreferencesChangedEvent(preferences);
|
||||||
|
}
|
||||||
|
|
||||||
|
function handlePreferencesDeletedEvent(msg) {
|
||||||
|
const preferences = JSON.parse(msg.data.preferences);
|
||||||
|
GlobalActions.emitPreferencesDeletedEvent(preferences);
|
||||||
|
}
|
||||||
|
|
||||||
function handleUserTypingEvent(msg) {
|
function handleUserTypingEvent(msg) {
|
||||||
GlobalActions.emitRemoteUserTypingEvent(msg.broadcast.channel_id, msg.data.user_id, msg.data.parent_id);
|
GlobalActions.emitRemoteUserTypingEvent(msg.broadcast.channel_id, msg.data.user_id, msg.data.parent_id);
|
||||||
|
|
||||||
|
|||||||
@@ -229,6 +229,8 @@ export const SocketEvents = {
|
|||||||
USER_UPDATED: 'user_updated',
|
USER_UPDATED: 'user_updated',
|
||||||
TYPING: 'typing',
|
TYPING: 'typing',
|
||||||
PREFERENCE_CHANGED: 'preference_changed',
|
PREFERENCE_CHANGED: 'preference_changed',
|
||||||
|
PREFERENCES_CHANGED: 'preferences_changed',
|
||||||
|
PREFERENCES_DELETED: 'preferences_deleted',
|
||||||
EPHEMERAL_MESSAGE: 'ephemeral_message',
|
EPHEMERAL_MESSAGE: 'ephemeral_message',
|
||||||
STATUS_CHANGED: 'status_change',
|
STATUS_CHANGED: 'status_change',
|
||||||
HELLO: 'hello',
|
HELLO: 'hello',
|
||||||
|
|||||||
Ссылка в новой задаче
Block a user