mirror of
https://github.com/TryGhost/Ghost.git
synced 2025-01-13 22:41:32 -05:00
Merge pull request #2916 from jaswilli/editor-route
Handle invalid post ids in editor route
This commit is contained in:
commit
8f3bf38d61
1 changed files with 19 additions and 3 deletions
|
@ -5,16 +5,32 @@ var EditorRoute = AuthenticatedRoute.extend(styleBody, {
|
||||||
classNames: ['editor'],
|
classNames: ['editor'],
|
||||||
|
|
||||||
model: function (params) {
|
model: function (params) {
|
||||||
var post = this.store.getById('post', params.post_id);
|
var self = this,
|
||||||
|
post,
|
||||||
|
postId;
|
||||||
|
|
||||||
|
postId = Number(params.post_id);
|
||||||
|
|
||||||
|
if (!Number.isInteger(postId) || !Number.isFinite(postId) || postId <= 0) {
|
||||||
|
this.transitionTo('posts.index');
|
||||||
|
}
|
||||||
|
|
||||||
|
post = this.store.getById('post', postId);
|
||||||
|
|
||||||
if (post) {
|
if (post) {
|
||||||
return post;
|
return post;
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.store.filter('post', { status: 'all', staticPages: 'all' }, function (post) {
|
return this.store.filter('post', { status: 'all', staticPages: 'all' }, function (post) {
|
||||||
return post.get('id') === params.post_id;
|
return post.get('id') === postId;
|
||||||
}).then(function (records) {
|
}).then(function (records) {
|
||||||
return records.get('firstObject');
|
var post = records.get('firstObject');
|
||||||
|
|
||||||
|
if (post) {
|
||||||
|
return post;
|
||||||
|
}
|
||||||
|
|
||||||
|
return self.transitionTo('posts.index');
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in a new issue