diff -r 7550cb541901 -r 7b266ccf6d3d cms/app-client/app/controllers/application.js --- a/cms/app-client/app/controllers/application.js Tue Jun 21 14:24:30 2016 +0200 +++ b/cms/app-client/app/controllers/application.js Wed Jun 22 22:13:46 2016 +0200 @@ -2,44 +2,27 @@ export default Ember.Controller.extend({ - queryParams: ['location', 'langue', 'discours', 'date', 'thematique', 'detail'], + queryParams: ['location', 'date', 'detail', { + language: 'langue', + discourse: 'discours', + theme: 'thematique' + }], filter: Ember.inject.service(), date: [], - setDateFilter: Ember.observer('date', function() { - this.get('filter').set('date', this.get('date')); - }), - setDate: Ember.observer('filter.date', function() { - this.set('date', this.get('filter').get('date')); - }), - discours: null, - setDiscoursFilter: Ember.observer('discours', function() { - this.get('filter').set('discours', this.get('discours')); - }), - setDiscours: Ember.observer('filter.discours', function() { - this.set('discours', this.get('filter').get('discours')); - }), - langue: null, - setLangueFilter: Ember.observer('langue', function() { - this.get('filter').set('langue', this.get('langue')); + discourse: null, + language: null, + location: null, + theme: null, + + setFilter: Ember.observer('date', 'discourse', 'language', 'location', 'theme', function(sender, key) { + this.get('filter').set(key, this.get(key)); }), - setLangue: Ember.observer('filter.langue', function() { - this.set('langue', this.get('filter').get('langue')); - }), - location: null, - setLocationFilter: Ember.observer('location', function() { - this.get('filter').set('location', this.get('location')); - }), - setLocation: Ember.observer('filter.location', function() { - this.set('location', this.get('filter').get('location')); - }), - thematique: null, - setThematiqueFilter: Ember.observer('thematique', function() { - this.get('filter').set('thematique', this.get('thematique')); - }), - setThematique: Ember.observer('filter.thematique', function() { - this.set('thematique', this.get('filter').get('thematique')); + + filterObserver: Ember.observer('filter.date', 'filter.discourse', 'filter.language', 'filter.location', 'filter.theme', function(sender, key) { + key = key.split('.').pop(); + this.set(key, this.get('filter').get(key)); }), detail: null,