Skip to content

Commit

Permalink
Fix live status removal from public/hashtag channels
Browse files Browse the repository at this point in the history
  • Loading branch information
Gargron committed Nov 9, 2016
1 parent aabf884 commit bf5f55a
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 10 deletions.
Expand Up @@ -4,7 +4,8 @@ import StatusListContainer from '../ui/containers/status_list_container';
import Column from '../ui/components/column';
import {
refreshTimeline,
updateTimeline
updateTimeline,
deleteFromTimelines
} from '../../actions/timelines';

const HashtagTimeline = React.createClass({
Expand All @@ -24,7 +25,12 @@ const HashtagTimeline = React.createClass({
}, {

received (data) {
dispatch(updateTimeline('tag', JSON.parse(data.message)));
switch(data.type) {
case 'update':
return dispatch(updateTimeline('tag', JSON.parse(data.message)));
case 'delete':
return dispatch(deleteFromTimelines(data.id));
}
}

});
Expand Down
@@ -1,11 +1,12 @@
import { connect } from 'react-redux';
import PureRenderMixin from 'react-addons-pure-render-mixin';
import { connect } from 'react-redux';
import PureRenderMixin from 'react-addons-pure-render-mixin';
import StatusListContainer from '../ui/containers/status_list_container';
import Column from '../ui/components/column';
import Column from '../ui/components/column';
import {
refreshTimeline,
updateTimeline
} from '../../actions/timelines';
updateTimeline,
deleteFromTimelines
} from '../../actions/timelines';

const PublicTimeline = React.createClass({

Expand All @@ -24,7 +25,12 @@ const PublicTimeline = React.createClass({
this.subscription = App.cable.subscriptions.create('PublicChannel', {

received (data) {
dispatch(updateTimeline('public', JSON.parse(data.message)));
switch(data.type) {
case 'update':
return dispatch(updateTimeline('public', JSON.parse(data.message)));
case 'delete':
return dispatch(deleteFromTimelines(data.id));
}
}

});
Expand Down
4 changes: 2 additions & 2 deletions app/services/fan_out_on_write_service.rb
Expand Up @@ -42,12 +42,12 @@ def deliver_to_hashtags(status)
Rails.logger.debug "Delivering status #{status.id} to hashtags"

status.tags.find_each do |tag|
FeedManager.instance.broadcast("hashtag:#{tag.name}", id: status.id)
FeedManager.instance.broadcast("hashtag:#{tag.name}", type: 'update', id: status.id)
end
end

def deliver_to_public(status)
Rails.logger.debug "Delivering status #{status.id} to public timeline"
FeedManager.instance.broadcast(:public, id: status.id)
FeedManager.instance.broadcast(:public, type: 'update', id: status.id)
end
end

0 comments on commit bf5f55a

Please sign in to comment.