54 lines
1.5 KiB
JavaScript
54 lines
1.5 KiB
JavaScript
import Route from '@ember/routing/route';
|
|
import { assign } from '@ember/polyfills';
|
|
import { inject as service } from '@ember/service';
|
|
|
|
export default Route.extend({
|
|
toolService: service('tool-service'),
|
|
activeListQueryParams: {
|
|
filters: JSON.stringify({active: [true]}),
|
|
limit: 128
|
|
},
|
|
beforeModel() {
|
|
let me = this;
|
|
me._super(...arguments);
|
|
|
|
// let perm = me.get('perm')
|
|
|
|
let service = me.get('service');
|
|
if (!service) {
|
|
const routeName = me.get('routeName');
|
|
let service = me.get('toolService').getServiceByRouteName(routeName);
|
|
if (service) {
|
|
console.log(`Set Route [${routeName}] Service [${service}]`);
|
|
me.set('service', service);
|
|
}
|
|
else {
|
|
console.log(`No Service Found For Route [${routeName}]`);
|
|
}
|
|
}
|
|
},
|
|
setupController(controller) {
|
|
let me = this;
|
|
controller.set('service', me.get('service'));
|
|
me._super(...arguments);
|
|
},
|
|
findParam(transition, name) {
|
|
let param = null
|
|
Object.keys(transition.params).some((k) => {
|
|
let props = transition.params[k];
|
|
if (props[name]) {
|
|
param = props[name];
|
|
return true;
|
|
}
|
|
});
|
|
return param;
|
|
},
|
|
allParams(transition) {
|
|
let params = {};
|
|
Object.keys(transition.params).forEach((k) => {
|
|
assign(params, transition.params[k]);
|
|
});
|
|
return params;
|
|
}
|
|
});
|