From c0c46b5eccbebbc718bad687d6a8b341d51961c1 Mon Sep 17 00:00:00 2001 From: Leonardo Merlin Date: Wed, 16 Sep 2015 21:45:22 -0300 Subject: [PATCH] Refact: paginator is more generic now --- src/app/components/app-paginator/app-paginator.directive.js | 28 ++++++++++++++++------------ src/app/components/app-paginator/app-paginator.html | 14 +++++++------- src/app/components/app-paginator/app-paginator.scss | 40 ++++++++++++++++++++++++++++++++++++++++ src/app/components/article-service/article.service.js | 15 +++------------ src/app/components/proposal-list/proposal-list.directive.js | 77 ++--------------------------------------------------------------------------- src/app/components/proposal-list/proposal-list.html | 24 ++---------------------- src/app/components/proposal-list/proposal-list.scss | 41 ----------------------------------------- src/app/components/social-share/social-share.html | 3 ++- src/app/pages/ranking/ranking.controller.js | 19 +++++++++---------- src/app/pages/ranking/ranking.html | 10 ++++++++-- 10 files changed, 89 insertions(+), 182 deletions(-) create mode 100644 src/app/components/app-paginator/app-paginator.scss diff --git a/src/app/components/app-paginator/app-paginator.directive.js b/src/app/components/app-paginator/app-paginator.directive.js index c679be3..5c59dbd 100644 --- a/src/app/components/app-paginator/app-paginator.directive.js +++ b/src/app/components/app-paginator/app-paginator.directive.js @@ -19,31 +19,36 @@ $log.debug('AppPaginatorController'); } - AppPaginatorController.prototype.init = function () { + AppPaginatorController.prototype.init = function() { var vm = this; vm.page = vm.page || 1; vm.perPage = vm.perPage || 20; vm.total = vm.total || 0; + + if ((vm.total % vm.perPage) === 0) { + vm.pages = vm.total / vm.perPage; + } else { + vm.pages = (vm.total / vm.perPage) + 1; + } + + vm.arraypages = new Array(Math.floor(vm.pages)); }; - AppPaginatorController.prototype.showPage = function (pageIndex) { + AppPaginatorController.prototype.showPage = function(pageIndex) { var vm = this; - if (pageIndex < 0) { - pageIndex = 0; + if (pageIndex < 1) { + pageIndex = 1; } - if (pageIndex > (vm.arraypages.length-1)) { - pageIndex = vm.arraypages.length-1; + if (pageIndex > vm.pages) { + pageIndex = vm.pages; } - if(vm.changePage){ - vm.changePage({pageIndex: (pageIndex + 1 )}); - }else{ - vm.proposalsPerPage = vm.getProposalsPerPage(pageIndex); + if (vm.changePage) { + vm.changePage({pageIndex: pageIndex}); } - vm.currentPageIndex = pageIndex; }; var directive = { @@ -60,7 +65,6 @@ bindToController: true }; - return directive; } diff --git a/src/app/components/app-paginator/app-paginator.html b/src/app/components/app-paginator/app-paginator.html index e5e0337..e51c418 100644 --- a/src/app/components/app-paginator/app-paginator.html +++ b/src/app/components/app-paginator/app-paginator.html @@ -1,15 +1,15 @@ -