Fix channel autocomplete and fix channel member query to ignore deleted channels (#4371)

Этот коммит содержится в:
Joram Wilander
2016-10-28 12:41:28 -04:00
коммит произвёл Corey Hulen
родитель fcf7d185f6
Коммит ef363fd88e
3 изменённых файлов: 30 добавлений и 37 удалений

Просмотреть файл

@@ -1040,6 +1040,7 @@ func (s SqlChannelStore) GetMembersForUser(teamId string, userId string) StoreCh
INNER JOIN Channels c INNER JOIN Channels c
ON c.Id = cm.ChannelId ON c.Id = cm.ChannelId
AND (c.TeamId = :TeamId OR c.TeamId = '') AND (c.TeamId = :TeamId OR c.TeamId = '')
AND c.DeleteAt = 0
WHERE cm.UserId = :UserId WHERE cm.UserId = :UserId
`, map[string]interface{}{"TeamId": teamId, "UserId": userId}) `, map[string]interface{}{"TeamId": teamId, "UserId": userId})

Просмотреть файл

@@ -31,10 +31,12 @@ export default class MoreChannels extends React.Component {
this.shouldComponentUpdate = PureRenderMixin.shouldComponentUpdate.bind(this); this.shouldComponentUpdate = PureRenderMixin.shouldComponentUpdate.bind(this);
const initState = this.getStateFromStores(); this.state = {
initState.channelType = ''; channelType: '',
initState.showNewChannelModal = false; showNewChannelModal: false,
this.state = initState; channels: null,
serverError: null
};
} }
componentDidMount() { componentDidMount() {
@@ -140,10 +142,8 @@ export default class MoreChannels extends React.Component {
} }
let moreChannels; let moreChannels;
const channels = this.state.channels;
if (this.state.channels != null) { if (channels == null) {
var channels = this.state.channels;
if (channels.loading) {
moreChannels = <LoadingScreen/>; moreChannels = <LoadingScreen/>;
} else if (channels.length) { } else if (channels.length) {
moreChannels = ( moreChannels = (
@@ -165,7 +165,6 @@ export default class MoreChannels extends React.Component {
</div> </div>
); );
} }
}
return ( return (
<div <div

Просмотреть файл

@@ -26,7 +26,6 @@ class ChannelStoreClass extends EventEmitter {
this.channels = []; this.channels = [];
this.myChannelMembers = {}; this.myChannelMembers = {};
this.moreChannels = {}; this.moreChannels = {};
this.moreChannels.loading = true;
this.stats = {}; this.stats = {};
this.unreadCounts = {}; this.unreadCounts = {};
} }
@@ -300,13 +299,7 @@ class ChannelStoreClass extends EventEmitter {
const ch = this.get(id); const ch = this.get(id);
const chMember = this.getMyMember(id); const chMember = this.getMyMember(id);
if (ch == null) { if (ch == null || chMember == null) {
console.log('setUnreadCountByChannel: missing channel id ' + id); //eslint-disable-line no-console
return;
}
if (chMember == null) {
console.log('setUnreadCountByChannel: missing channel member for channel id ' + id); //eslint-disable-line no-console
return; return;
} }