auth-service.js 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. import Ember from 'ember';
  2. import PreloadStore from 'misago/services/preload-store';
  3. import Auth from 'misago/services/auth';
  4. export function initialize(container, application) {
  5. var user = Ember.Object.create(PreloadStore.get('user'));
  6. // Coerce user ID to string
  7. if (user.get('id')) {
  8. user.set('id', user.get('id').toString());
  9. }
  10. application.register('misago:user', user, { instantiate: false });
  11. application.register('misago:isAuthenticated', PreloadStore.get('isAuthenticated'), { instantiate: false });
  12. application.register('service:auth', Auth, { singleton: true });
  13. application.inject('service:auth', 'isAuthenticated', 'misago:isAuthenticated');
  14. application.inject('service:auth', 'user', 'misago:user');
  15. application.inject('service:auth', 'session', 'store:local');
  16. application.inject('service:auth', 'store', 'store:main');
  17. application.inject('route', 'auth', 'service:auth');
  18. application.inject('controller', 'auth', 'service:auth');
  19. application.inject('component', 'auth', 'service:auth');
  20. }
  21. export default {
  22. name: 'auth-service',
  23. after: 'local-store',
  24. initialize: initialize
  25. };