Ghost/ghost/admin/app/services/session.js

27 lines
838 B
JavaScript
Raw Normal View History

import RSVP from 'rsvp';
import SessionService from 'ember-simple-auth/services/session';
import {computed} from '@ember/object';
import {inject as service} from '@ember/service';
export default SessionService.extend({
feature: service(),
dataStore: service('store'), // SessionService.store already exists
tour: service(),
user: computed(function () {
return this.get('dataStore').queryRecord('user', {id: 'me'});
}),
authenticate() {
return this._super(...arguments).then((authResult) => {
// TODO: remove duplication with application.afterModel
let preloadPromises = [
this.get('feature').fetch(),
this.get('tour').fetchViewed()
];
return RSVP.all(preloadPromises).then(() => authResult);
});
}
});