Refactored post handling/updating on both the client and server.

Этот коммит содержится в:
JoramWilander
2015-08-26 12:09:01 -04:00
родитель 8356e25f80
Коммит 041d89b85a
28 изменённых файлов: 1643 добавлений и 902 удалений

81
web/react/components/rhs_header_post.jsx Обычный файл
Просмотреть файл

@@ -0,0 +1,81 @@
// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved.
// See License.txt for license information.
var AppDispatcher = require('../dispatcher/app_dispatcher.jsx');
var Constants = require('../utils/constants.jsx');
var ActionTypes = Constants.ActionTypes;
export default class RhsHeaderPost extends React.Component {
constructor(props) {
super(props);
this.handleClose = this.handleClose.bind(this);
this.handleBack = this.handleBack.bind(this);
this.state = {};
}
handleClose(e) {
e.preventDefault();
AppDispatcher.handleServerAction({
type: ActionTypes.RECIEVED_SEARCH,
results: null
});
AppDispatcher.handleServerAction({
type: ActionTypes.RECIEVED_POST_SELECTED,
results: null
});
}
handleBack(e) {
e.preventDefault();
AppDispatcher.handleServerAction({
type: ActionTypes.RECIEVED_SEARCH_TERM,
term: this.props.fromSearch,
do_search: true,
is_mention_search: this.props.isMentionSearch
});
AppDispatcher.handleServerAction({
type: ActionTypes.RECIEVED_POST_SELECTED,
results: null
});
}
render() {
var back;
if (this.props.fromSearch) {
back = (
<a
href='#'
onClick={this.handleBack}
className='sidebar--right__back'
>
<i className='fa fa-chevron-left'></i>
</a>
);
}
return (
<div className='sidebar--right__header'>
<span className='sidebar--right__title'>{back}Message Details</span>
<button
type='button'
className='sidebar--right__close'
aria-label='Close'
onClick={this.handleClose}
>
</button>
</div>
);
}
}
RhsHeaderPost.defaultProps = {
isMentionSearch: false,
fromSearch: ''
};
RhsHeaderPost.propTypes = {
isMentionSearch: React.PropTypes.bool,
fromSearch: React.PropTypes.string
};