mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-02 08:13:34 +03:00
3653cfbfbf
no issue - moved `document-title` Route extension's functionality into the `ui` service - updates the title each time the router service emits a route changed event - `ui.updateDocumentTitle()` can now be called directly from components rather than the confusing `this.send('updateDocumentTitle')` bubbling behaviour - refactored the `titleToken` implementation to use the now-formalised `RouteInfo`'s `metadata` field (https://github.com/emberjs/rfcs/blob/master/text/0398-RouteInfo-Metadata.md#appendix-a)
30 lines
894 B
JavaScript
30 lines
894 B
JavaScript
import AuthenticatedRoute from 'ghost-admin/routes/authenticated';
|
|
|
|
export default AuthenticatedRoute.extend({
|
|
model(params, transition) {
|
|
let {type: modelName} = params;
|
|
|
|
if (!['post','page'].includes(modelName)) {
|
|
let path = transition.intent.url.replace(/^\//, '');
|
|
return this.replaceWith('error404', {path, status: 404});
|
|
}
|
|
|
|
return this.get('session.user').then(user => (
|
|
this.store.createRecord(modelName, {authors: [user]})
|
|
));
|
|
},
|
|
|
|
// there's no specific controller for this route, instead all editor
|
|
// handling is done on the editor route/controler
|
|
setupController(controller, newPost) {
|
|
let editor = this.controllerFor('editor');
|
|
editor.setPost(newPost);
|
|
},
|
|
|
|
buildRouteInfoMetadata() {
|
|
return {
|
|
mainClasses: ['editor-new']
|
|
};
|
|
}
|
|
});
|