diff --git a/frontend/scenes/Document/Document.js b/frontend/scenes/Document/Document.js index aec4fc2b..4bc09784 100644 --- a/frontend/scenes/Document/Document.js +++ b/frontend/scenes/Document/Document.js @@ -6,6 +6,7 @@ import { observer, inject } from 'mobx-react'; import { withRouter, Prompt } from 'react-router'; import Flex from 'components/Flex'; import { color, layout } from 'styles/constants'; +import { collectionUrl } from 'utils/routeHelpers'; import Document from 'models/Document'; import UiStore from 'stores/UiStore'; @@ -152,8 +153,13 @@ type Props = { }; onCancel = () => { - if (!this.document) return; - this.props.history.push(this.document.url); + let url; + if (this.document && this.document.url) { + url = this.document.url; + } else { + url = collectionUrl(this.props.match.params.id); + } + this.props.history.push(url); }; onStartDragging = () => { diff --git a/frontend/utils/routeHelpers.js b/frontend/utils/routeHelpers.js index 6569726d..ce11b20f 100644 --- a/frontend/utils/routeHelpers.js +++ b/frontend/utils/routeHelpers.js @@ -14,6 +14,10 @@ export function newCollectionUrl(): string { return '/collections/new'; } +export function collectionUrl(collectionId: string): string { + return `/collections/${collectionId}`; +} + export function documentUrl(doc: Document): string { return doc.url; }