auth-service.js 1.0 KB

12345678910111213141516171819202122232425262728293031
  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('route', 'auth', 'service:auth');
  17. application.inject('controller', 'auth', 'service:auth');
  18. application.inject('component', 'auth', 'service:auth');
  19. }
  20. export default {
  21. name: 'auth-service',
  22. after: 'local-store',
  23. initialize: initialize
  24. };