diff options
Diffstat (limited to 'webapp/components/suggestion')
-rw-r--r-- | webapp/components/suggestion/search_channel_provider.jsx | 9 | ||||
-rw-r--r-- | webapp/components/suggestion/switch_channel_provider.jsx | 17 |
2 files changed, 9 insertions, 17 deletions
diff --git a/webapp/components/suggestion/search_channel_provider.jsx b/webapp/components/suggestion/search_channel_provider.jsx index 8965e7a76..c0ec06181 100644 --- a/webapp/components/suggestion/search_channel_provider.jsx +++ b/webapp/components/suggestion/search_channel_provider.jsx @@ -10,6 +10,7 @@ import ChannelStore from 'stores/channel_store.jsx'; import AppDispatcher from 'dispatcher/app_dispatcher.jsx'; import {Constants, ActionTypes} from 'utils/constants.jsx'; +import {sortChannelsByDisplayName} from 'utils/channel_utils.jsx'; import React from 'react'; @@ -51,7 +52,7 @@ export default class SearchChannelProvider extends Provider { const publicChannels = data; const localChannels = ChannelStore.getAll(); - const privateChannels = []; + let privateChannels = []; for (const id of Object.keys(localChannels)) { const channel = localChannels[id]; @@ -60,15 +61,15 @@ export default class SearchChannelProvider extends Provider { } } - const filteredPublicChannels = []; + let filteredPublicChannels = []; publicChannels.forEach((item) => { if (item.name.startsWith(channelPrefix)) { filteredPublicChannels.push(item); } }); - privateChannels.sort((a, b) => a.name.localeCompare(b.name)); - filteredPublicChannels.sort((a, b) => a.name.localeCompare(b.name)); + privateChannels = privateChannels.sort(sortChannelsByDisplayName); + filteredPublicChannels = filteredPublicChannels.sort(sortChannelsByDisplayName); const channels = filteredPublicChannels.concat(privateChannels); const channelNames = channels.map((channel) => channel.name); diff --git a/webapp/components/suggestion/switch_channel_provider.jsx b/webapp/components/suggestion/switch_channel_provider.jsx index 0bc30a79f..3b7bec319 100644 --- a/webapp/components/suggestion/switch_channel_provider.jsx +++ b/webapp/components/suggestion/switch_channel_provider.jsx @@ -12,6 +12,7 @@ import Client from 'client/web_client.jsx'; import AppDispatcher from 'dispatcher/app_dispatcher.jsx'; import {Constants, ActionTypes} from 'utils/constants.jsx'; import * as Utils from 'utils/utils.jsx'; +import {sortChannelsByDisplayName} from 'utils/channel_utils.jsx'; import React from 'react'; @@ -105,19 +106,9 @@ export default class SwitchChannelProvider extends Provider { userMap[user.id] = user; } - channels.sort((a, b) => { - if (a.display_name === b.display_name) { - if (a.type !== Constants.DM_CHANNEL && b.type === Constants.DM_CHANNEL) { - return -1; - } else if (a.type === Constants.DM_CHANNEL && b.type !== Constants.DM_CHANNEL) { - return 1; - } - return a.name.localeCompare(b.name); - } - return a.display_name.localeCompare(b.display_name); - }); - - const channelNames = channels.map((channel) => channel.name); + const channelNames = channels. + sort(sortChannelsByDisplayName). + map((channel) => channel.name); AppDispatcher.handleServerAction({ type: ActionTypes.SUGGESTION_RECEIVED_SUGGESTIONS, |