Commit bcca440aedc3403a73909163e1bc09efb948aebe
1 parent
4aec23e3
Exists in
master
and in
8 other branches
Add filter to ranking page
Showing
5 changed files
with
37 additions
and
24 deletions
Show diff stats
src/app/components/proposal-list/proposal-list.directive.js
@@ -21,8 +21,8 @@ | @@ -21,8 +21,8 @@ | ||
21 | vm.$log = $log; | 21 | vm.$log = $log; |
22 | 22 | ||
23 | vm.init(); | 23 | vm.init(); |
24 | - | ||
25 | vm.loadData(); | 24 | vm.loadData(); |
25 | + vm.attachListeners(); | ||
26 | } | 26 | } |
27 | 27 | ||
28 | ProposalListController.prototype.init = function () { | 28 | ProposalListController.prototype.init = function () { |
@@ -37,6 +37,12 @@ | @@ -37,6 +37,12 @@ | ||
37 | vm.per_page = 5; | 37 | vm.per_page = 5; |
38 | } | 38 | } |
39 | 39 | ||
40 | + vm.initPorposalList(); | ||
41 | + }; | ||
42 | + | ||
43 | + ProposalListController.prototype.initPorposalList = function () { | ||
44 | + var vm = this; | ||
45 | + | ||
40 | vm.currentPageIndex = 0; | 46 | vm.currentPageIndex = 0; |
41 | 47 | ||
42 | vm.proposalsPerPage = vm.getProposalsPerPage(0); | 48 | vm.proposalsPerPage = vm.getProposalsPerPage(0); |
@@ -44,14 +50,14 @@ | @@ -44,14 +50,14 @@ | ||
44 | vm.proposalsLength = vm.proposals.length; | 50 | vm.proposalsLength = vm.proposals.length; |
45 | 51 | ||
46 | 52 | ||
47 | - if ((vm.proposalsLength % vm.per_page) == 0) { | 53 | + if ((vm.proposalsLength % vm.per_page) === 0) { |
48 | vm.pages = vm.proposalsLength / vm.per_page; | 54 | vm.pages = vm.proposalsLength / vm.per_page; |
49 | } else{ | 55 | } else{ |
50 | - vm.pages = (vm.proposalsLength / vm.per_page) +1; | ||
51 | - }; | ||
52 | - | ||
53 | - vm.arraypages = new Array(Math.ceil(vm.pages)); | 56 | + vm.pages = (vm.proposalsLength / vm.per_page) + 1; |
57 | + } | ||
54 | 58 | ||
59 | + // vm.arraypages = new Array(Math.ceil(vm.pages)); | ||
60 | + vm.arraypages = new Array(Math.floor(vm.pages)); | ||
55 | }; | 61 | }; |
56 | 62 | ||
57 | ProposalListController.prototype.loadData = function () { | 63 | ProposalListController.prototype.loadData = function () { |
@@ -64,6 +70,14 @@ | @@ -64,6 +70,14 @@ | ||
64 | }, 1000); | 70 | }, 1000); |
65 | }; | 71 | }; |
66 | 72 | ||
73 | + ProposalListController.prototype.attachListeners = function () { | ||
74 | + var vm = this; | ||
75 | + | ||
76 | + vm.$scope.$watch('vm.proposals', function(/*newValue, oldValue*/) { | ||
77 | + vm.initPorposalList(); | ||
78 | + }); | ||
79 | + }; | ||
80 | + | ||
67 | ProposalListController.prototype.getProposalsPerPage = function (pageIndex) { | 81 | ProposalListController.prototype.getProposalsPerPage = function (pageIndex) { |
68 | var vm = this; | 82 | var vm = this; |
69 | 83 | ||
@@ -97,7 +111,7 @@ | @@ -97,7 +111,7 @@ | ||
97 | }, { | 111 | }, { |
98 | location: true | 112 | location: true |
99 | }); | 113 | }); |
100 | - } | 114 | + }; |
101 | 115 | ||
102 | function attachPopover(){ | 116 | function attachPopover(){ |
103 | var vm = this; | 117 | var vm = this; |
src/app/components/proposal-list/proposal-list.html
@@ -47,7 +47,7 @@ | @@ -47,7 +47,7 @@ | ||
47 | <span aria-hidden="true">«</span> | 47 | <span aria-hidden="true">«</span> |
48 | </a> | 48 | </a> |
49 | </li> | 49 | </li> |
50 | - <li ng-repeat="paginas in vm.arraypages track by $index" ng-class="{ 'active' : ($index) == vm.currentPageIndex }" > | 50 | + <li ng-repeat="pagina in vm.arraypages track by $index" ng-class="{ 'active' : ($index) == vm.currentPageIndex }" > |
51 | <a href="#" ng-click="vm.showPage($index)">{{::($index)+1}}</a> | 51 | <a href="#" ng-click="vm.showPage($index)">{{::($index)+1}}</a> |
52 | </li> | 52 | </li> |
53 | <li ng-class="{ 'disabled' : vm.currentPageIndex == (vm.arraypages.length -1)}"> | 53 | <li ng-class="{ 'disabled' : vm.currentPageIndex == (vm.arraypages.length -1)}"> |
src/app/index.route.js
@@ -124,7 +124,7 @@ | @@ -124,7 +124,7 @@ | ||
124 | 'main': { | 124 | 'main': { |
125 | templateUrl: 'app/pages/propostas/ranking.html', | 125 | templateUrl: 'app/pages/propostas/ranking.html', |
126 | controller: 'PropostasPageController', | 126 | controller: 'PropostasPageController', |
127 | - controllerAs: 'pageRanking' | 127 | + controllerAs: 'pagePropostas' |
128 | }, | 128 | }, |
129 | 'footer': { templateUrl: 'app/pages/footer/footer.html' } | 129 | 'footer': { templateUrl: 'app/pages/footer/footer.html' } |
130 | } | 130 | } |
src/app/pages/propostas/propostas.controller.js
@@ -79,7 +79,6 @@ | @@ -79,7 +79,6 @@ | ||
79 | 79 | ||
80 | vm.$scope.$on('change-selectedCategory', function (event, selectedCategory) { | 80 | vm.$scope.$on('change-selectedCategory', function (event, selectedCategory) { |
81 | vm.selectedTheme = selectedCategory; | 81 | vm.selectedTheme = selectedCategory; |
82 | - vm.$log.debug('vm.selectedTheme', vm.selectedTheme); | ||
83 | }); | 82 | }); |
84 | 83 | ||
85 | vm.$scope.$watch('pagePropostas.selectedTheme', function(newValue/*, oldValue*/) { | 84 | vm.$scope.$watch('pagePropostas.selectedTheme', function(newValue/*, oldValue*/) { |
src/app/pages/propostas/ranking.html
@@ -16,7 +16,7 @@ | @@ -16,7 +16,7 @@ | ||
16 | </div> | 16 | </div> |
17 | </div> | 17 | </div> |
18 | </section> | 18 | </section> |
19 | - <section class="section--articles section-gray section-space-up" ng-if="pageRanking.proposals"> | 19 | + <section class="section--articles section-gray section-space-up" ng-if="pagePropostas.proposals"> |
20 | <div class="container"> | 20 | <div class="container"> |
21 | <div id="lista-de-propostas" class="row"> | 21 | <div id="lista-de-propostas" class="row"> |
22 | <div class="col-sm-4 col-md-3"> | 22 | <div class="col-sm-4 col-md-3"> |
@@ -24,9 +24,9 @@ | @@ -24,9 +24,9 @@ | ||
24 | <div class="col-xs-12"> | 24 | <div class="col-xs-12"> |
25 | <div class="input-group input-group-lg input-group-search"> | 25 | <div class="input-group input-group-lg input-group-search"> |
26 | <label for="articleQueryFilter" class="control-label sr-only">Buscar propostas:</label> | 26 | <label for="articleQueryFilter" class="control-label sr-only">Buscar propostas:</label> |
27 | - <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pageRanking.query" placeholder="Buscar propostas" aria-label="Buscar propostas" > | 27 | + <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pagePropostas.query" placeholder="Buscar propostas" aria-label="Buscar propostas" > |
28 | <span class="input-group-btn"> | 28 | <span class="input-group-btn"> |
29 | - <button type="button" class="btn btn-default" ng-click="pageRanking.search()"> | 29 | + <button type="button" class="btn btn-default" ng-click="pagePropostas.search()"> |
30 | <span class="icon-circle icon-small color-theme-common-bg"> | 30 | <span class="icon-circle icon-small color-theme-common-bg"> |
31 | <span class="glyphicon glyphicon-search"></span> | 31 | <span class="glyphicon glyphicon-search"></span> |
32 | </span> | 32 | </span> |
@@ -37,15 +37,15 @@ | @@ -37,15 +37,15 @@ | ||
37 | <br/> | 37 | <br/> |
38 | </div> | 38 | </div> |
39 | </div> | 39 | </div> |
40 | - <div ng-if="pageRanking.themes"> | ||
41 | - <category-list categories="pageRanking.themes" selected-category="pageRanking.selectedTheme"></category-list> | 40 | + <div ng-if="pagePropostas.themes"> |
41 | + <category-list categories="pagePropostas.themes" selected-category="pagePropostas.selectedTheme"></category-list> | ||
42 | </div> | 42 | </div> |
43 | - <div ng-if="!pageRanking.themes && pageRanking.loadingThemes"> | 43 | + <div ng-if="!pagePropostas.themes && pagePropostas.loadingThemes"> |
44 | <div class="alert alert-info" role="alert"> | 44 | <div class="alert alert-info" role="alert"> |
45 | Carregando temas. | 45 | Carregando temas. |
46 | </div> | 46 | </div> |
47 | </div> | 47 | </div> |
48 | - <div ng-if="!pageRanking.themes && pageRanking.themesError"> | 48 | + <div ng-if="!pagePropostas.themes && pagePropostas.themesError"> |
49 | <div class="alert alert-danger" role="alert"> | 49 | <div class="alert alert-danger" role="alert"> |
50 | Não foi possível carregar a lista de temas neste momento. | 50 | Não foi possível carregar a lista de temas neste momento. |
51 | </div> | 51 | </div> |
@@ -56,9 +56,9 @@ | @@ -56,9 +56,9 @@ | ||
56 | <div class="col-xs-12"> | 56 | <div class="col-xs-12"> |
57 | <div class="input-group input-group-lg input-group-search"> | 57 | <div class="input-group input-group-lg input-group-search"> |
58 | <label for="articleQueryFilter" class="control-label sr-only">Buscar propostas:</label> | 58 | <label for="articleQueryFilter" class="control-label sr-only">Buscar propostas:</label> |
59 | - <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pageRanking.query" placeholder="Buscar propostas" aria-label="Buscar propostas" > | 59 | + <input id="articleQueryFilter" type="search" class="form-control input-search" ng-model="pagePropostas.query" placeholder="Buscar propostas" aria-label="Buscar propostas" > |
60 | <span class="input-group-btn"> | 60 | <span class="input-group-btn"> |
61 | - <button type="button" class="btn btn-default" ng-click="pageRanking.search()"> | 61 | + <button type="button" class="btn btn-default" ng-click="pagePropostas.search()"> |
62 | <span class="icon-circle icon-small color-theme-common-bg"> | 62 | <span class="icon-circle icon-small color-theme-common-bg"> |
63 | <span class="glyphicon glyphicon-search"></span> | 63 | <span class="glyphicon glyphicon-search"></span> |
64 | </span> | 64 | </span> |
@@ -71,21 +71,21 @@ | @@ -71,21 +71,21 @@ | ||
71 | <div class="row"> | 71 | <div class="row"> |
72 | <div class="col-sm-12"> | 72 | <div class="col-sm-12"> |
73 | <header class="header"> | 73 | <header class="header"> |
74 | - <h2>Total de Propostas as propostas: "<span>{{::pageRanking.proposals.length}} propostas</span>"</h2> | 74 | + <h2>Total de Propostas as propostas: "<span>{{::pagePropostas.proposals.length}} propostas</span>"</h2> |
75 | </header> | 75 | </header> |
76 | </div> | 76 | </div> |
77 | </div> | 77 | </div> |
78 | 78 | ||
79 | <div class="row"> | 79 | <div class="row"> |
80 | - <div class="col-sm-12" ng-if="pageRanking.proposals"> | ||
81 | - <proposal-list proposals="pageRanking.filtredProposals"></proposal-list> | 80 | + <div class="col-sm-12" ng-if="pagePropostas.proposals"> |
81 | + <proposal-list proposals="pagePropostas.filtredProposals"></proposal-list> | ||
82 | </div> | 82 | </div> |
83 | - <div ng-if="!pageRanking.proposals && pageRanking.loadingProposals"> | 83 | + <div ng-if="!pagePropostas.proposals && pagePropostas.loadingProposals"> |
84 | <div class="alert alert-info" role="alert"> | 84 | <div class="alert alert-info" role="alert"> |
85 | Carregando propostas. | 85 | Carregando propostas. |
86 | </div> | 86 | </div> |
87 | </div> | 87 | </div> |
88 | - <div ng-if="!pageRanking.proposals && pageRanking.proposalsError"> | 88 | + <div ng-if="!pagePropostas.proposals && pagePropostas.proposalsError"> |
89 | <div class="alert alert-danger" role="alert"> | 89 | <div class="alert alert-danger" role="alert"> |
90 | Não foi possível carregar a lista de propostas neste momento. | 90 | Não foi possível carregar a lista de propostas neste momento. |
91 | </div> | 91 | </div> |