Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Ember engines and Ember simple Auth

I am implementing ember-engine in my application. I am using ember-simple-auth addon for authentication. It works well with main application routes.

I extend the protected routes with mixin provided by addon.

// app/routes/protected.js
import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin';

export default Ember.Route.extend(AuthenticatedRouteMixin);

Now I have created a users engine. which has the userlist and some other stuff. I want user to access this page only if he is authenticated. In main app routes I can extend the route with mixin and it will redirect to login route if the user is not authenticated. But same things does not work with users engine routes.

Any idea about how to implement Ember-simple-auth with Ember-engines ?

Reference : -

Ember engines - https://github.com/ember-engines/ember-engines

Ember simple auth - https://github.com/simplabs/ember-simple-auth

EDIT-

//lib/users-engine/routes/edit.js
import AuthenticatedRouteMixin from 'ember-simple-auth/mixins/authenticated-route-mixin';
export default Ember.Route.extend(AuthenticatedRouteMixin);

I tried to extend the engines route as above.

like image 989
murli2308 Avatar asked Dec 09 '16 12:12

murli2308


1 Answers

Your engine needs to define dependencies it needs the main app to provide. In your case, you'll need the simple auth service, see Declaring Dependencies for more details.

https://github.com/ember-engines/ember-engines#declaring-dependencies

Note: the mixins that simple auth uses may not work out of the box with this setup (but I think they should). On my phone atm, can look into it later if needed.

like image 116
acorncom Avatar answered Sep 28 '22 05:09

acorncom