From 7cdfba62ef991f36363592a70f08db6a88b3c332 Mon Sep 17 00:00:00 2001 From: khawerrind Date: Tue, 3 Jan 2017 20:02:47 +0500 Subject: PLT-3960 Don't show (message deleted) placeholder to the user that deleted the message (#4839) * on post delete remove the whole post for the owner of the post while other user will still see post deleted message * now the deleter wont see the post while the other users will see deleted message * removed fromSocket check and now calling PostStore.removePost instead of PostStore.deletePost from view * fixed the bug which was causing to show message deleted until next action * added remove post from store to global action * moved removePostFromStore from global actions to post actions --- webapp/actions/post_actions.jsx | 5 +++++ webapp/components/delete_post_modal.jsx | 4 ++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/webapp/actions/post_actions.jsx b/webapp/actions/post_actions.jsx index 207f0143d..0e48fb0e8 100644 --- a/webapp/actions/post_actions.jsx +++ b/webapp/actions/post_actions.jsx @@ -362,3 +362,8 @@ export function createPost(post, doLoadPost, success, error) { } ); } + +export function removePostFromStore(post) { + PostStore.removePost(post); + PostStore.emitChange(); +} diff --git a/webapp/components/delete_post_modal.jsx b/webapp/components/delete_post_modal.jsx index 5f21ea3bc..84eef4671 100644 --- a/webapp/components/delete_post_modal.jsx +++ b/webapp/components/delete_post_modal.jsx @@ -9,6 +9,7 @@ import ModalStore from 'stores/modal_store.jsx'; import {Modal} from 'react-bootstrap'; import * as AsyncClient from 'utils/async_client.jsx'; import AppDispatcher from '../dispatcher/app_dispatcher.jsx'; +import {removePostFromStore} from 'actions/post_actions.jsx'; import Constants from 'utils/constants.jsx'; import {FormattedMessage} from 'react-intl'; @@ -54,8 +55,7 @@ export default class DeletePostModal extends React.Component { this.state.post.channel_id, this.state.post.id, () => { - PostStore.deletePost(this.state.post); - + removePostFromStore(this.state.post); if (this.state.post.id === PostStore.getSelectedPostId()) { AppDispatcher.handleServerAction({ type: ActionTypes.RECEIVED_POST_SELECTED, -- cgit v1.2.3-1-g7c22