import Ember from 'ember'; import BaseComponent from './base-component'; export default BaseComponent.extend({ trimIndex: true, classNames: ['widget-toolbox', 'clearfix'], total: Ember.computed.alias('route.controller.model.total'), prevPage: Ember.computed('currPage', function() { return this.get('currPage') - 1 || 1; }), nextPage: Ember.computed('currPage', function() { let me = this; let page = me.get('currPage'); return page + 1 <= me.get('totalPage') ? page + 1 : page; }), currPage: Ember.computed('params.page', function() { let me = this; let currPage = parseInt(me.get('params.page')); Ember.Logger.info('Get Curr Page [' + currPage + ']'); return currPage; }), pages: Ember.computed('total', function() { let i = 0; let pages = []; while (i++ < this.get('totalPage')) { pages.push(i); } return pages; }), totalPage: Ember.computed('total', function() { let me = this; let pageSize = me.get('service.pageSize') || 16; return parseInt((me.get('total') + pageSize - 1) / pageSize); }), actions: { gotoPage(page) { let me = this; let router = me.get('router'); let params = me.get('params'); Ember.Logger.info('To Page [' + page + '], Params: ', params); router.transitionTo(me.get('routeName'), page, {queryParams: params}); } } });