Move instances of Client.createPost() in components to an action (#4639)

* Move instances of Client.createPost() in components to an action

* update per review, waiting for more review and see if this is the right way

* update per code review

* update code

* remove comment per request
Этот коммит содержится в:
Carlos Tadeu Panato Junior
2016-12-05 18:59:12 +01:00
коммит произвёл Harrison Healey
родитель b9b986b741
Коммит f27aca4b73
4 изменённых файлов: 68 добавлений и 49 удалений

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

@@ -4,7 +4,6 @@
import $ from 'jquery';
import ReactDOM from 'react-dom';
import AppDispatcher from '../dispatcher/app_dispatcher.jsx';
import Client from 'client/web_client.jsx';
import EmojiStore from 'stores/emoji_store.jsx';
import UserStore from 'stores/user_store.jsx';
import PostDeletedModal from './post_deleted_modal.jsx';
@@ -163,24 +162,16 @@ export default class CreateComment extends React.Component {
post.create_at = time;
GlobalActions.emitUserCommentedEvent(post);
Client.createPost(
post,
(data) => {
PostStore.removePendingPost(post.channel_id, post.pending_post_id);
AppDispatcher.handleServerAction({
type: ActionTypes.RECEIVED_POST,
post: data
});
PostActions.createPost(post, false,
() => {
// DO nothing.
},
(err) => {
if (err.id === 'api.post.create_post.root_id.app_error') {
this.showPostDeletedModal();
PostStore.removePendingPost(post.channel_id, post.pending_post_id);
} else {
post.state = Constants.POST_FAILED;
PostStore.updatePendingPost(post);
this.forceUpdate();
}
this.setState({
@@ -188,6 +179,18 @@ export default class CreateComment extends React.Component {
});
}
);
this.setState({
message: '',
submitting: false,
postError: null,
fileInfos: [],
serverError: null
});
const fasterThanHumanWillClick = 150;
const forceFocus = (Date.now() - this.state.lastBlurAt < fasterThanHumanWillClick);
this.focusTextbox(forceFocus);
}
handleSubmitReaction(isReaction) {