cms/app-client/app/routes/application.js
changeset 344 70451a4dc9ae
parent 204 dd969e178944
child 392 4fbe94af93e8
equal deleted inserted replaced
343:3b2e76f5f3ca 344:70451a4dc9ae
     1 import Ember from 'ember';
     1 import Ember from 'ember';
     2 
     2 
     3 export default Ember.Route.extend({
     3 export default Ember.Route.extend({
     4 
     4 
     5     model: function() {
     5     page: 1,
     6         return this.store.findAll('document');
     6     limit: 10,
     7     },
     7 
       
     8     documents: [],
       
     9     model: Ember.observer('page', function() {
       
    10         var self = this;
       
    11         var promise = this.store.query('document', {
       
    12             page: this.get('page'),
       
    13             perpage: this.get('limit')
       
    14         });
       
    15         promise.then(function(value) {
       
    16             if(self.controller) {
       
    17                 self.controller.set('page', self.get('page'));
       
    18                 self.controller.set('documents', self.get('documents'));
       
    19             }
       
    20             self.set('documents', value);
       
    21         });
       
    22         return promise;
       
    23     }),
     8 
    24 
     9     serializeQueryParam: function(value, urlKey) {
    25     serializeQueryParam: function(value, urlKey) {
    10         if (urlKey === 'date') {
    26         if (urlKey === 'date') {
    11             return value;
    27             return value;
    12         }
    28         }
    13         return '' + value;
    29         return '' + value;
       
    30     },
       
    31 
       
    32     setupController: function(controller) {
       
    33         this._super(...arguments);
       
    34         controller.set('page', this.get('page'));
       
    35         controller.set('limit', this.get('limit'));
       
    36         controller.set('documents', this.get('documents'));
    14     },
    37     },
    15 
    38 
    16     deserializeQueryParam: function(value, urlKey) {
    39     deserializeQueryParam: function(value, urlKey) {
    17         if (urlKey === 'date') {
    40         if (urlKey === 'date') {
    18             var array = [];
    41             var array = [];
    23         }
    46         }
    24         return value;
    47         return value;
    25     },
    48     },
    26 
    49 
    27     actions: {
    50     actions: {
       
    51 
       
    52         setPageQueryparams: function(type) {
       
    53             var page = this.get('page');
       
    54             if(type === 'previous') {
       
    55                 page = page - 1;
       
    56             } else if(type === 'next') {
       
    57                 page = page + 1;
       
    58             }
       
    59             this.propertyWillChange('page');
       
    60             this.set('page', page);
       
    61             this.propertyDidChange('page');
       
    62         },
    28 
    63 
    29         willTransition: function() {
    64         willTransition: function() {
    30             // Prevent navigation from removing query parameters
    65             // Prevent navigation from removing query parameters
    31             var _this = this,
    66             var _this = this,
    32                 queryParams = {};
    67                 queryParams = {};