From 8b29404525f036633be6b25dc18c536d2aafee02 Mon Sep 17 00:00:00 2001 From: =Corey Hulen Date: Tue, 8 Dec 2015 12:29:12 -0800 Subject: PLT-1418 Adding old style replying in RHS --- web/react/components/search_results_item.jsx | 24 ++++++++++++++++++++++-- web/react/dispatcher/event_helpers.jsx | 25 +++++++++++++++++++++++++ web/sass-files/sass/partials/_search.scss | 7 +++++++ 3 files changed, 54 insertions(+), 2 deletions(-) diff --git a/web/react/components/search_results_item.jsx b/web/react/components/search_results_item.jsx index 1d4983026..7ae64f651 100644 --- a/web/react/components/search_results_item.jsx +++ b/web/react/components/search_results_item.jsx @@ -8,11 +8,14 @@ import * as EventHelpers from '../dispatcher/event_helpers.jsx'; import * as utils from '../utils/utils.jsx'; import * as TextFormatting from '../utils/text_formatting.jsx'; +import Constants from '../utils/constants.jsx'; + export default class SearchResultsItem extends React.Component { constructor(props) { super(props); this.handleClick = this.handleClick.bind(this); + this.handleFocusRHSClick = this.handleFocusRHSClick.bind(this); } handleClick(e) { @@ -21,6 +24,12 @@ export default class SearchResultsItem extends React.Component { EventHelpers.emitPostFocusEvent(this.props.post.id); } + handleFocusRHSClick(e) { + e.preventDefault(); + + EventHelpers.emitPostFocusRightHandSideEvent(this.props.post); + } + render() { var channelName = ''; var channel = ChannelStore.get(this.props.post.channel_id); @@ -65,13 +74,24 @@ export default class SearchResultsItem extends React.Component { className='search-item__jump' onClick={this.handleClick} > - {} + + + +
  • + +
  • diff --git a/web/react/dispatcher/event_helpers.jsx b/web/react/dispatcher/event_helpers.jsx index 306c59e8b..bc1132765 100644 --- a/web/react/dispatcher/event_helpers.jsx +++ b/web/react/dispatcher/event_helpers.jsx @@ -8,6 +8,7 @@ import Constants from '../utils/constants.jsx'; const ActionTypes = Constants.ActionTypes; import * as AsyncClient from '../utils/async_client.jsx'; import * as Client from '../utils/client.jsx'; +import * as Utils from '../utils/utils.jsx'; export function emitChannelClickEvent(channel) { AsyncClient.getChannels(true); @@ -38,6 +39,30 @@ export function emitPostFocusEvent(postId) { ); } +export function emitPostFocusRightHandSideEvent(post) { + Client.getPost( + post.channel_id, + post.id, + (data) => { + AppDispatcher.handleServerAction({ + type: ActionTypes.RECIEVED_POST_SELECTED, + post_list: data + }); + + AppDispatcher.handleServerAction({ + type: ActionTypes.RECIEVED_SEARCH, + results: null + }); + }, + (err) => { + AsyncClient.dispatchError(err, 'getPost'); + } + ); + + var postChannel = ChannelStore.get(post.channel_id); + Utils.switchChannel(postChannel); +} + export function emitLoadMorePostsEvent() { const id = ChannelStore.getCurrentId(); loadMorePostsTop(id); diff --git a/web/sass-files/sass/partials/_search.scss b/web/sass-files/sass/partials/_search.scss index a29e940e6..226449ba2 100644 --- a/web/sass-files/sass/partials/_search.scss +++ b/web/sass-files/sass/partials/_search.scss @@ -114,6 +114,13 @@ top: 0; } +.search-item__comment { + position: absolute; + right: 0; + margin-right: 20px; + top: 0; +} + .search-item-time { color: #a8adb7; } -- cgit v1.2.3-1-g7c22