diff --git a/app/assets/javascripts/components/actions/statuses.jsx b/app/assets/javascripts/components/actions/statuses.jsx index ee662fe791..6f43539e07 100644 --- a/app/assets/javascripts/components/actions/statuses.jsx +++ b/app/assets/javascripts/components/actions/statuses.jsx @@ -28,7 +28,6 @@ export function fetchStatus(id) { const skipLoading = getState().getIn(['statuses', id], null) !== null; dispatch(fetchContext(id)); - dispatch(fetchStatusCard(id)); if (skipLoading) { return; @@ -102,8 +101,14 @@ export function fetchContext(id) { api(getState).get(`/api/v1/statuses/${id}/context`).then(response => { dispatch(fetchContextSuccess(id, response.data.ancestors, response.data.descendants)); + dispatch(fetchStatusCard(id)); }).catch(error => { - dispatch(fetchContextFail(id, error)); + if (error.response.status == 404){ + dispatch(deleteStatusSuccess(id)); + dispatch(deleteFromTimelines(id)); + }else{ + dispatch(fetchContextFail(id, error)); + } }); }; }; diff --git a/app/assets/javascripts/components/components/status_not_found.jsx b/app/assets/javascripts/components/components/status_not_found.jsx new file mode 100644 index 0000000000..917c1c06f6 --- /dev/null +++ b/app/assets/javascripts/components/components/status_not_found.jsx @@ -0,0 +1,16 @@ +import { FormattedMessage } from 'react-intl'; + +const style = { + textAlign: 'center', + fontSize: '16px', + fontWeight: '500', + paddingTop: '120px' +}; + +const StatusNotFound = () => ( +